A lightweight IOC Container that is powerful enough to do all the things you need it to do.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Simon G f58e5f1254 #12: update test 5 years ago
.github/workflows - change to on: release 6 years ago
.idea/.idea.LightweightIocContainer - add .idea folder 5 years ago
LightweightIocContainer #12: add option to register and resolve open generic types 5 years ago
Test.LightweightIocContainer #12: update test 5 years ago
.gitattributes - add .gitattributes 7 years ago
.gitignore - remove old rider definition 5 years ago
LICENSE.md - add .md file extension 6 years ago
LightweightIocContainer.sln - add unit test 7 years ago
LightweightIocContainer.sln.DotSettings - fix file header 5 years ago
README.md - update version numbers 6 years ago

README.md

Lightweight IOC Container

A lightweight IOC Container that is powerful enough to do all the things you need it to do.

Build status GitHub Actions

Nuget Nuget Nuget (with prereleases)

Get started with the Lightweight IOC Container

How to install

The easiest way to install the Lightweight IOC Container is by using NuGet.
You can either use the PackageManager in VisualStudio:

PM> Install-Package LightweightIocContainer -Version 2.2.0-beta

or you can use the .NET CLI:

> dotnet add package LightweightIocContainer --version 2.2.0-beta

Example usage

  1. Instantiate IocContainer:

    IocContainer container = new IocContainer();
    
  2. Install IIocInstallers for the container:

    container.Install(new Installer());
    
  3. Resolve one instance from the container:

    IFooFactory fooFactory = container.Resolve<IFooFactory>();
    
  4. Use this instance to create what your application needs:

    IFoo foo = fooFactory.Create();
    
  5. When your application is finished, don't forget to dispose your IocContainer:

    container.Dispose();
    

Demo Project

There is a demo project available where you can check out how different functions of the Lightweight IOC Container can be used.