.NET Web API 2 依赖注入 - 依赖列表
.NET Web API 2 Dependency injection - List of dependencies
我有一个使用 Unity 作为 DependencyResolver 的 MS WebApi 2 项目。
我在创建一个工厂 class 时遇到问题,该工厂依赖于特定接口的所有已注册提供者,因为将来会出现更多的提供者,并且工厂不应该仅仅因为一个支持新提供商。
如果我的工厂是如下实现的,Unity DependencyResolver 无法实例化它。
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);
}
}
}
有没有办法在不依赖 IDependencyResolver 的情况下解析依赖项列表?
谢谢
尝试通过参数数组注入服务列表。
public MyServiceProviderFactory(params IServiceProvider[] serviceProviders)
我有一个使用 Unity 作为 DependencyResolver 的 MS WebApi 2 项目。
我在创建一个工厂 class 时遇到问题,该工厂依赖于特定接口的所有已注册提供者,因为将来会出现更多的提供者,并且工厂不应该仅仅因为一个支持新提供商。
如果我的工厂是如下实现的,Unity DependencyResolver 无法实例化它。
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);
}
}
}
有没有办法在不依赖 IDependencyResolver 的情况下解析依赖项列表?
谢谢
尝试通过参数数组注入服务列表。
public MyServiceProviderFactory(params IServiceProvider[] serviceProviders)