【发布时间】:2012-03-23 00:14:00
【问题描述】:
在 autoFac 中,我可以注册一个接口的多个实现。当 autofac 实例化我的对象时,所有实例都会传递给构造函数。
来自 autofac 的文档:here
例如,当 Autofac 注入类型为的构造函数参数时 IEnumerable 它不会寻找提供的组件 可数的。相反,容器会找到所有 ITask 的实现并将它们全部注入。
StructureMap 中是否提供此功能?
对于我的课程:
public interface IFoo
{
}
public class Foo1 : IFoo
{
}
public class Foo2 : IFoo
{
}
public class UsingFoo
{
public UsingFoo(IEnumerable<IFoo> allFoos)
{
foreach (var foo in allFoos)
{
}
}
}
如何注册我的实现,以便在实例化 UsingFoo 时,将向构造函数传递 IFoo 的所有实现?
【问题讨论】:
标签: structuremap autofac