是否可以按照惯例在.NET Core中注册依赖项?

时间:2017-08-19 23:08:42

标签: dependency-injection asp.net-core .net-core

某些容器允许按名称注册。 Ninject就是一个例子。

.NET Core DI容器是否支持此功能?如果没有,是否有计划或第三方图书馆来支持这个?

3 个答案:

答案 0 :(得分:6)

  

.NET Core DI容器是否支持此功能?如果没有,是否存在   计划或第三方图书馆支持这个?

简答:

来源:Introduction to Dependency Injection in ASP.NET Core

  

替换默认服务容器

     

内置服务容器旨在满足基本需求   框架和构建在其上的大多数消费者应用程序。然而,   开发人员可以用他们的首选替换内置容器   容器。 ConfigureServices方法通常返回void,但是如果   它的签名被更改为返回IServiceProvider,不同   容器可以配置和返回。有很多IOC   可用于.NET的容器。

(强调我的)

有了这个,你可以检查Ninject是否有.net核心的扩展名,看看你是否可以集成它。

答案 1 :(得分:3)

您可以编写自己的约定,一个简单的示例如下所示:

{{1}}

您可以扩展它以包括抽象类,非公共类型等。

答案 2 :(得分:0)

  
    

如果没有,是否有计划或第三方图书馆来支持这个?

  

试试这个https://github.com/khellang/Scrutor

相关问题