我有多个相同类型参数的构造函数的服务依赖关系SimpleInjector命名参数注册
class Service{
public void Service (String connectionStringOne, string connectionStringTwo)
{}
}
我怎样才能做到在SimpleInjector容器此注册。 我假设我会使用RegisterConditional提供谓词。 例如
Container.RegisterConditional(typoef(string),"SQLConnectionString",Leftstyle.Singleton, pc => pc.ParameterName == "connectionStringOne")
Container.RegisterConditional(typoef(string),"MDXConnectionStribng",Leftstyle.Singleton, pc => pc.ParameterName == "connectionStringTwo")
然而PredicateContext不提供 'ParameteName'
我不明白你的问题。你能详细说明吗? – Steven
道歉我错过了。请参阅修订后的问题 –
参数名称可以使用'c.Consumer.Target.Name'来检索,尽管我建议不要像这样使用RegisterConditional。查看我的答案,找到另一种方法。 – Steven