/ms-di-property-injection-extension

Extension package for MS DI, that adds injection via properties by one method and one attribute

Primary LanguageC#MIT LicenseMIT

MS DI Property Injection

Nuget

Usage

Mark property for injection

using Microsoft.Extensions.DependencyInjection;

public class FooService : IFooService
{
    [Inject]
    public IBooService BooService { get; set; }

    public void Foo()
    {
        // just start using injected property
        BooService...
    }
}

Add services scan method in ConfigureServices

using Microsoft.Extensions.DependencyInjection;

...

 host.ConfigureServices((services)=>
            {               
                services.AddTransient<IBooService, BooService>();
                services.AddTransient<IFooService, FooService>();

                // scan method
                services.AddPropertyInjectedServices();
            });

Install

Install-Package DJMJ.Extensions.DependencyInjection.Property