我有一个简单的课程:
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。