C# 针对给定场景使用ninject/autofac
比如说,我有一些供应商-C# 针对给定场景使用ninject/autofac,c#,dependency-injection,ninject,autofac,C#,Dependency Injection,Ninject,Autofac,比如说,我有一些供应商- <Providers> <Provider Type="Providers.IM" Name="Im"/> <Provider Type="Providers.Web" Name="Web"/> ... </Provider> ... 每个提供商都可以为我提供一个会话: <Sessions> <Session Name="GoogleIM" Provider="I
<Providers>
<Provider Type="Providers.IM" Name="Im"/>
<Provider Type="Providers.Web" Name="Web"/>
...
</Provider>
...
每个提供商都可以为我提供一个会话:
<Sessions>
<Session Name="GoogleIM" Provider="Im" URL="..." />
<Session Name="YahooIM" Provider="Im" URL="..." />
<Session Name="YahooWeb" Provider="Web" URL="..." />
...
</Session>
...
目前,我通过查看提供者、实例化类型和注入URL(手动)来实例化“命名”会话
我可以使用会话工厂,它可能必须理解url并返回正确的会话
有没有办法用ninject/autofac更优雅/简单地处理此问题?我可能无法正确理解您的设置,但我相信您可以很容易地用ninject处理此类操作。您可能希望创建一个基本接口,并让所有对象实现它。Ninject绑定将使用上下文来确定加载哪个类来代替接口类型。我在这里使用Ninject的上下文绑定编写了一个简短的教程:那个链接死了。新的似乎是