我正在尝试解决依赖于我正在调用的操作中的参数值的依赖关系。
我有这个 WCF 服务
public class InformationService : IInformationService
{
private readonly IValueProvider _valueProvider;
public InformationService(IValueProvider valueProvider)
{
_valueProvider= valueProvider;
}
public CompanyReportResponse CompanyReport(string option)
{
_valueProvider.Execute(option);
}
}
我还在容器中为我的 ValueProvider 注册了两种具体类型。
Registry.For<IValueProvider>().Add<ValueProvider1>().Named("No1");
Registry.For<IValueProvider>().Add<ValueProvider2>().Named("No2");
是否可以根据选项的价值使用不同的价值提供者?
Ie, when option is "value1"
then _valueProvider
will use the concrete type ValueProvider1
and when option is "value2
" then _valueProvider
will use the concrete type ValueProvider2
.