冒着进入圣战的风险,这些流行的DI/IoC框架的优点和缺点是什么,其中一个可以轻易地被认为是最好的吗?..:
Ninject
团结
城堡。温莎
Autofac
StructureMap
还有其他我没有在这里列出的c# DI/IoC框架吗?
在我的用例中,我正在构建一个WPF客户端应用程序,WCF/SQL服务基础设施,易用性(特别是在清晰简洁的语法方面),一致的文档,良好的社区支持和性能都是我选择的重要因素。
更新:
所引用的资源和重复的问题似乎已经过时了,那些了解所有这些框架的人能站出来提供一些真正的见解吗?
我知道大多数关于这个主题的观点可能是有偏见的,但我希望有人花时间研究所有这些框架,至少有一个总体上客观的比较。
如果以前没有人做过这样的调查,我很愿意自己做,但我认为至少有一些人已经做过了。
第二次更新:
如果您有使用多个DI/IoC容器的经验,请对它们的优缺点进行排序和总结,谢谢。这并不是一个发现人们所做的所有晦涩的小容器的练习,我正在寻找流行(和活跃)框架之间的比较。
好吧,环顾四周之后,我发现目前为止最好的比较是:
http://www.sturmnet.org/blog/2010/03/04/poll-ioc-containers-for-net
http://www.sturmnet.org/blog/2010/03/04/poll-results-ioc-containers-for-net
这是2010年3月进行的一项民意调查。
我感兴趣的一点是,那些使用过DI/IoC框架并喜欢或不喜欢它的人,StructureMap似乎名列前茅。
从民调来看,卡塞尔。Windsor和StructureMap似乎是最受欢迎的。
有趣的是,Unity和Spring。Net似乎是最普遍不受欢迎的选择。(我考虑Unity是出于懒惰(以及微软的徽章/支持),但我现在会更仔细地研究温莎城堡和StructureMap。)
当然,这可能不适用于2010年5月发布的Unity 2.0。
希望其他人可以根据直接经验进行比较。
好吧,环顾四周之后,我发现目前为止最好的比较是:
http://www.sturmnet.org/blog/2010/03/04/poll-ioc-containers-for-net
http://www.sturmnet.org/blog/2010/03/04/poll-results-ioc-containers-for-net
这是2010年3月进行的一项民意调查。
我感兴趣的一点是,那些使用过DI/IoC框架并喜欢或不喜欢它的人,StructureMap似乎名列前茅。
从民调来看,卡塞尔。Windsor和StructureMap似乎是最受欢迎的。
有趣的是,Unity和Spring。Net似乎是最普遍不受欢迎的选择。(我考虑Unity是出于懒惰(以及微软的徽章/支持),但我现在会更仔细地研究温莎城堡和StructureMap。)
当然,这可能不适用于2010年5月发布的Unity 2.0。
希望其他人可以根据直接经验进行比较。