【发布时间】:2012-06-24 07:44:24
【问题描述】:
我正在尝试使用 Caliburn Micro 和 nHibernate 为新的 LOB MVVM 项目设计架构,现在正在研究 DI 和 IOC。
许多引导 Caliburn Micro 的示例都使用 MEF 作为 DI\IOC 机制。
我苦苦挣扎的是,MEF 似乎相当受欢迎,但 Mef [Imports] 注释的想法在我看来就像是另一种风格的服务定位器?
我是否遗漏了有关 MEF 的某些内容,因为我看到的几乎所有示例都没有正确使用它,或者我完全不了解它的使用方式,从而绕过了整个服务定位器问题?
【问题讨论】:
-
好的,所以我刚刚了解了 [ImportingConstructor] 属性,它可以启用基于“正确”构造函数的 DI。但问题仍然存在,是 MEF+[Imports] = Service Locator = Antipattern?
标签: mef anti-patterns service-locator