0

我有一项包含两个不同组件的服务

<component type="ConcreteA, ConcreteA" service="Interface, Interface" />
<component type="ConcreteB, ConcreteB" service="Interface, Interface" />

我想解决这两个问题。我正在尝试这种方式

var builder = new ContainerBuilder();
builder.RegisterModule(new ConfigurationSettingsReader());
builder.RegisterControllers(typeof(MvcApplication).Assembly);

this._container = builder.Build();
DependencyResolver.SetResolver(new AutofacDependencyResolver(this._container));

现在在我的控制器中,我想解决我的依赖

public Interface _myInterface { get; set; }

我以这种方式使用它:

_myInterface.DoWork();

如果我在配置中声明一个组件,一切都会完美运行。但是如果我添加更多相同接口类型的组件,就会出现问题。我试图用

public List<Interface> _myInterfaces { get; set; }

但是该属性始终为空...我该怎么办?

谢谢

4

1 回答 1

0

解决了

public Interface[] _myInterfaces { get; set; }

代替

public List<Interface> _myInterfaces { get; set; }
于 2015-03-16T13:44:06.620 回答