Autofac 允许使用 .AsImplementedInterfaces() 或链式 .As() 调用与 .SingleInstance() 轻松地将多个接口解析为同一实例。这也可以用 TinyIoC 来完成吗?我只找到了如何注册同一接口的多个实现,但没有链接注册等的方法。
据我了解,这对于 IoC 容器来说是一个非常重要的功能,不是吗?
如果我理解正确的话你有类似的东西
public class MyThing : IFoo, IBar
{
}
并且您希望以下内容返回彼此相同的实例:
Resolve<IFoo>();
Resolve<IBar>();
如果是这样,这是可能的,但它有点难看:
container.Register<IFoo, MyThing>();
container.Register<IBar>((c,p) => c.Resolve<IFoo>() as IBar);
如果您愿意,您可能可以将其包装成一些更好的语法,但是该工厂委托实际上是在幕后发生的事情。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)