Kephas 如何与 ASP.NET Core 集成



我能理解的太多了,Kephas 不提供自己的 DI 容器,但它在现有容器上构建适配器(Kephas 有自己的依赖注入容器。为什么是另一个框架,为什么不使用现有的框架?现有的适配器用于System.Composition(MEF2),正如我最近了解到的,用于Autofac(从版本6.5.0开始,不能在Kephas的开放通用服务中使用构造函数)。

但是,ASP.NET 附带了自己的 DI 容器实现。在这方面,现在是否有可能将Kephas与 ASP.NET 核心一起使用,如果是,如何?

从6.5.0版本开始,Kephas还将提供一个 ASP.NET 核心适配器,因此,是的,很快可以将Kephas与 ASP.NET Core一起使用。但是,内置的依赖注入并不具有 Kephas 所需的所有功能、命名元数据和延迟实例化。还将有一个用于Microsoft.Extensions.DependencyInjection的适配器,但没有上述功能,所以我并不真正推荐它。建议使用 Autofac 适配器(Microsoft ASP.NET Core 建议将其用于高级方案)。

另一方面,你可以让Kephas使用MEF2或Autofac管理其依赖关系,并向 ASP.NET Core提供一个服务提供程序,聚合默认的(或你选择的一个)和来自Kephas的服务提供商。这有以下缺点:

  1. 您最终将得到两个容器。

  2. Kephas 容器将无法访问 ASP.NET Core 提供的服务。

相关内容

  • 没有找到相关文章

最新更新