KEPHASE评估依赖注入



评估kephas时,我已经看到它使用了Microsoft(System.comPosition软件包)的托管扩展框架。但是,我们使用nInject进行依赖注入。我是被迫更改DI容器,还是可以使用ninject?

you 不必更改有关您使用的DI框架的任何内容,在这种情况下为ninject。但是,根据您的迁移策略,您必须考虑以下内容:

  • kepass使用DI抽象,该抽象可以在任何具体的DI实现上进行理论上运行,因此从技术上讲,您可以在NINICK容器的引擎盖下使用。

= but =

  • kephad广泛使用di元数据,据我所知,ninject不支持元数据。

因此,您有以下选项:

  • 使用两个DI容器。对于桥接完整的迁移时间,这可能是实用的,但我不建议从长远来看。
  • 使用另一个支撑元数据的DI容器。如果您对System.com post(MEF)适配器不满意,为提供内置的支持,则可以使用AutoFac,但是要使用它,您将必须提供容器适配器(这不是那么复杂)。通过这样做,您只有一个DI容器。

结论:即使您不必更改DI框架,出于上述原因,建议这样做。

您可能需要检查DI Wiki以获取更多信息。

免责声明:我是Kepas框架的主要开发人员。

最新更新