防止Autofac积极注入属性?

时间:2017-06-30 17:15:29

标签: c# autofac property-injection

我有一个简单的课程:

public class MyWidget
{
    private string _something;

    public MyWidget(string name)
    {

    }

    public string Something
    {
        get { return _something; }
        set { _something = value; }
    }
}

我在Autofac注册:

var builder = new ContainerBuilder();
builder.RegisterType<MyWidget>();
var container = builder.Build();

如果我解析工厂并创建MyWidget的实例:

var myWidgetFactory = Container.Resolve<Func<string, MyWidget>>();
var myWidget = myWidgetFactory("test");

属性'Something'被赋值为“test”,即使它与构造函数参数无关。为什么Autofac认为它应该设置它的第一个属性?我该如何防止这种情况?我正在使用Autofac v4.0.0。

0 个答案:

没有答案