拥抱.NET Core系列:依赖注入(2)

拥抱.NET Core系列:依赖注入(2),第1张

概述上一篇“拥抱.NET Core系列:依赖注入(1)大体介绍了服务注册、获取和生命周期,这一篇来做一些补充。由于内容跨度大(.NET Core、ASP.NET Core),所以文章并不是非常的贯穿,大家可以挑着看。 构造函数的选择 如果一个服务中包含多个构造函数,.NET Core会选择哪一个呢? 答案是:最大匹配的构造函数。 我们来看个示例 泛型服务 单个泛型 多个泛型 集成第三方DI容器 我们这

上一篇“拥抱.NET Core系列:依赖注入(1)大体介绍了服务注册、获取和生命周期,这一篇来做一些补充。由于内容跨度大(.NET Core、ASP.NET Core),所以文章并不是非常的贯穿,大家可以挑着看。

构造函数的选择

如果一个服务中包含多个构造函数,.NET Core会选择哪一个呢?

答案是:最大匹配的构造函数。

我们来看个示例


泛型服务 单个泛型

多个泛型


集成第三方DI容器

我们这边使用autofac来做演示。

安装packages:“autofac.Extensions.DependencyInjection”

在 ASP.NET Core

注意修改“ConfigureServices”方法的返回值为“IServiceProvIDer”。


在 VIEw 中使用服务


其它

在 ASP.NET Core 中,每个Request,都会创建一个新的DI子容器,在请求结束后会销毁该DI子容器。这样可以很好的避免资源泄漏。子容器的服务生命周期可以参考上一篇文章。

原文地址:http://www.cnblogs.com/ants/p/7148674.HTML


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

总结

以上是内存溢出为你收集整理的拥抱.NET Core系列:依赖注入(2)全部内容,希望文章能够帮你解决拥抱.NET Core系列:依赖注入(2)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1230205.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)