假设我们有一个类
public class MyClass
{
private string _val;
public MyClass(string val)
{
_val = val;
}
}
和 app.config(或 web.config)
<appSettings>
<add key="value" value="some value" />
</appSettings>
有没有办法在 Unity 容器中注册类型 MyClass 并指向 Unity 从配置文件中为 val 构造函数参数注入(inject)值?
最佳答案
这很容易。
C#代码:
var container = new UnityContainer();
container.LoadConfiguration();
MyClass mc = container.Resolve<MyClass>();
配置文件:
<unity xmlns="http://schemas.microsoft.com/practices/2010/unity">
<container>
<register type="[namespace].MyClass, [assembly-name]"
mapTo="[namespace].MyClass, [assembly-name]">
<constructor>
<param name="val" value="Ethan Woo"/>
</constructor>
</register>
</container>
关于c# - 如何使用 Unity 从配置文件注入(inject)构造函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8188258/