天天看點

Autofac自動注入Named的依賴項

注入三個接口:

builder.RegisterType<Foo1>().Named<IFoo>("one").As<IFoo>();
builder.RegisterType<Foo2>().Named<IFoo>("two").As<IFoo>();
builder.RegisterType<Foo3>().Named<IFoo>("three").As<IFoo>();
           

注入引用:

builder.Register<Func<string, IFoo>>(c =>
    {
        var cc = c.Resolve<IComponentContext>();
        return named => cc.Resolve<IFoo>(named);
    });
           

解決方案很精妙啊~

來自stackoverflow:http://stackoverflow.com/questions/2888621/autofacs-funct-to-resolve-named-service

轉載于:https://my.oschina.net/wower/blog/282006

c#