IoC容器之间的差异

M4N*_*M4N 5 .net ioc-container

我正在寻找有关如何为ASP.NET MVC应用程序选择IoC容器的一些指导.

(例如)StructureMap,Ninject,Castle Windsor,Unity,autofac和其他人之间有什么区别?任何人都可以提供一些提示或链接到可能有助于选择一个库的资源吗?

更新:有一个问题(Enterprise Library Unity vs其他IoC容器),它讨论了IoC容器初始化的差异.

但是功能上是否有任何差异,这会使一些IoC容器成为ASP.NET MVC应用程序的更好选择?

M4N*_*M4N 6

各种IoC容器之间的一个不同之处是生命周期或实例化模式,这些模式是开箱即用的(何时创建组件的新实例):

  • StructureMap
    • transient(称为per-request),singleton,thread-local,per-HttpContext,per-HttpSession,Hybrid
  • Ninject
    • transient,singleton,per-thread,per-HttpRequest
  • 城堡温莎
    • 单例,瞬态,每线程,汇集,每HttpRequest(可通过设施获得)
  • autofac
    • transient(factory),singleton,per-HttpRequest
  • 统一
    • 瞬态,单一,每线程


Mad*_*138 5

这是一篇有用的博客文章,比较.Net中可用的各种IOC框架之间的功能,我不知道有什么关于MVC有利于一个容器而不是另一个容器.

马克斯