剑轩

net core控制器(控制台)中使用依赖注入

电脑版发表于:2019/7/11 10:54


net core中使用的依赖注入默认是:DependencyInjection

使用nuget下载:install-package Microsoft.Extensions.DependencyInjection


这里有一个设计原则:依赖于抽象,而不是具体的实现


使用也比较方便:

1:添加测试对象关系,也就是一个接口一个实现类,随便添加2个就可以


2:配置好类与接口的依赖关系

贴个代码方便复制

var serviceProvider = new ServiceCollection()
    .AddSingleton<IVisitorLogDAL, VisitorLogDAL>()
    .AddSingleton<IVisitorLogMQ, VisitorLogMQ>()    
    .BuildServiceProvider();


3:通过依赖注入的容器得到对象就好

IVisitorLogMQ visitorLogMQ = serviceProvider.GetService<IVisitorLogMQ>();
visitorLogMQ.AddVisitLog();

VisitorLogMQ类中如果还有依赖,比如就是依赖于这个IVisitorLogDAL,我们也可以很方便的使用构造函数注入即可,

因为我们VisitorLogMQ对象是通过容器得到的,所以它所依赖的对象会被容器实例化的时候自动注入进去,这样使用起来就比较方便了




关于TNBLOG
TNBLOG,技术分享。技术交流:群号677373950
ICP备案 :渝ICP备18016597号-1
App store Android
精彩评论
{{item.replyName}}
{{item.content}}
{{item.time}}
{{subpj.replyName}}
@{{subpj.beReplyName}}{{subpj.content}}
{{subpj.time}}
猜你喜欢