C# .NET Web API 2依赖项注入-依赖项列表
我有一个MSWebAPI 2项目,它使用Unity作为DependencyResolver 我在创建一个工厂类时遇到了一个问题,该工厂类依赖于特定接口的所有注册提供程序,因为将来会出现更多的提供程序,工厂不应该仅仅因为支持新的提供程序而改变 如果我的工厂实现如下,Unity DependencyResolver将无法实例化它C# .NET Web API 2依赖项注入-依赖项列表,c#,asp.net-web-api,inversion-of-control,unity-container,C#,Asp.net Web Api,Inversion Of Control,Unity Container,我有一个MSWebAPI 2项目,它使用Unity作为DependencyResolver 我在创建一个工厂类时遇到了一个问题,该工厂类依赖于特定接口的所有注册提供程序,因为将来会出现更多的提供程序,工厂不应该仅仅因为支持新的提供程序而改变 如果我的工厂实现如下,Unity DependencyResolver将无法实例化它 namespace Wintouch.Web.Api.Implementations { public class MyServiceProviderFactory
namespace Wintouch.Web.Api.Implementations
{
public class MyServiceProviderFactory : IServiceProviderFactory
{
private IEnumerable<IServiceProvider> _ServiceProviders;
public MyServiceProviderFactory(IEnumerable<IServiceProvider> serviceProviders)
{
this._ServiceProviders = serviceProviders;
}
public IServiceProvider GetServiceProvider(string providerKey)
{
return this._ServiceProviders.First(e => e.key = providerKey);
}
}
}
名称空间Wintouch.Web.Api.Implementations
{
公共类MyServiceProviderFactory:IServiceProviderFactory
{
私人IEnumerable_服务提供商;
公共MyServiceProviderFactory(IEnumerable serviceProviders)
{
这。_ServiceProviders=ServiceProviders;
}
公共IServiceProvider GetServiceProvider(字符串providerKey)
{
返回此值。\u ServiceProviders.First(e=>e.key=providerKey);
}
}
}
有没有一种方法可以在不依赖IDependencyResolver的情况下解析依赖项列表
谢谢尝试通过参数数组注入服务列表
public MyServiceProviderFactory(params IServiceProvider[] serviceProviders)