C# 使用unity选择多个构造函数
看了之后,我还没有看到一个具体解决我问题的答案。我知道unity首先考虑多参数的ctor。然而,当参数类型相同或不同时,这会导致我产生一些奇怪的误解。具有:C# 使用unity选择多个构造函数,c#,parameters,constructor,unity-container,C#,Parameters,Constructor,Unity Container,看了之后,我还没有看到一个具体解决我问题的答案。我知道unity首先考虑多参数的ctor。然而,当参数类型相同或不同时,这会导致我产生一些奇怪的误解。具有: public MyClass(string s1, string s2) public MyClass(string s1) public MyClass(Guid g1) 为什么当我提供带有Guid的ParameterOverride的ResolverOverride时,Unity会先尝试双字符串参数 当我在ParameterOve
public MyClass(string s1, string s2)
public MyClass(string s1)
public MyClass(Guid g1)
为什么当我提供带有Guid
的ParameterOverride
的ResolverOverride
时,Unity会先尝试双字符串参数
当我在ParameterOverride中提供了一个类似的情况,并且只有一个字符串时,它是否仍然会首先尝试使用双字符串参数?我没有明确地告诉Unity吗
最后,我如何阻止Unity这样做?我必须使用一些“魔法”设置解析
或注册表类型
有人能帮我清理一下脑袋里的不和谐吗
首先,它选择具有InjectionConstructor属性的构造函数。然后,具有大多数参数的构造函数计数 这是一篇关于它的好文章