【发布时间】:2012-02-03 00:43:54
【问题描述】:
我有一个界面:
public interface IFoo{
string Bar{ get; set; }
}
以及接口的实现
public class RealFoo{
public string Bar{ get; set; }
public string Qux{ get; set; }
}
我已经通过配置文件配置了 unity,以使用属性注入将 IFoo 解析为 RealFoo:
<register type="Namespace.IFoo, Assembly" mapTo="Namespace.RealFoo, Assembly">
<property name="Qux" value="somevalue" />
</register>
如果我调用 Resolve(typeof(RealFoo)),我的实例将 .Qux 设置为“somevalue”。这怎么可能?这是预期的行为吗?我知道如果我调用 Resolve(typeof( IFoo )) .Qux 将被设置为“somevalue”,但无法解释如何解析具体类型将设置 .Qux。
【问题讨论】:
标签: .net unity-container