Skip to content

Repository files navigation

AnyContainer lets you write type registration code and static resolve code that's easily swappable to any number of IoC containers.

How to use

Register:

AnyContainerBasecontainer=newSimpleInjectorAnyContainer();container.RegisterSingleton<ILogger,Logger>();container.RegisterTransient<ITransientService,TransientService>();container.RegisterSingleton<IOtherService>(()=>newOtherService("abc"));

Setting up static resolver:

StaticResolver.SetResolver(container);

Resolving from static context:

varlogger=StaticResolver.Resolve<ILogger>();

For good design you should try to avoid doing a lot of static resolves and instead take the dependencies on the constructor. But sometimes it's still handy to be able to do it.

Supported containers

  • Simple Injector
  • DryIoc
  • Unity

About

Allows swapping out IoC containers without rewriting registration or resolve code.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages