原文:asp.net core2.0 依赖注入 AddTransient与AddScoped的区别 - 晓剑 - CSDN博客

原文地址http://www.tnblog.net/aojiancc2/article/details/167

asp.net core主要提供了三种依赖注入的方式

其中AddTransient与AddSingleton比较好区别

AddTransient瞬时模式:每次都获取一个新的实例

AddSingleton单例模式:每次都获取同一个实例

而AddTransient与AddScoped的区别更不容易区别一点

首先这两种方式每次请求得到的都不是同一个对象,从这点看会发现这两个都一样。

但是我们可以继续分细一点,虽然不同的请求得到的结果不同,但是我们可以在同一次请求中去获取多次实例测试。

  •   AddTransient注入方式获取两次实例
services.AddTransient<IUserBLL, UserBll>();

可以看到瞬时模式即使同一次请求中也是不同的对象

  •   AddScoped注入方式获取两次实例
services.AddScoped<IUserBLL, UserBll>();

可以发现AddScoped在同一次请求中,获取多次对象得到的是同一个对象

小总结:

AddTransient瞬时模式:每次请求,都获取一个新的实例。即使同一个请求获取多次也会是不同的实例

AddScoped:每次请求,都获取一个新的实例。同一个请求获取多次会得到相同的实例

AddSingleton单例模式:每次都获取同一个实例

最新文章

  1. 奇怪的float
  2. ExecutorService 和 NSOperationQueue
  3. jq tab
  4. poj 1176 Party Lamps
  5. Spring Transaction + MyBatis SqlSession事务管理机制[marked]
  6. thinkphp对数据库操作有哪些内置函数
  7. Web性能测试基本性能指标
  8. 关于C++和C#类型比较的相关内容
  9. org.springframework.web.context.ContextLoaderListener 转
  10. CSS:margin负数的使用
  11. Azure 网站和通配符域
  12. SQL SERVER统计服务器所有的数据库(数据库文件)、表(表行数)、字段(各字段)等详细信息
  13. JavaScript高级程序设计:第四章
  14. centos gdb安装
  15. 理解HDFS
  16. SSM商城开发学习
  17. 设计模式のFilterPattern(过滤器模式)----结构模式
  18. Hadoop生态圈-Ranger数据安全管理框架
  19. Springboot(一)概念
  20. SuperObject生成示例

热门文章

  1. ORM-Dapper:Dapper百科
  2. linux下根据根据进程号查端口、根据端口号查进程号汇总,以及netstat的相关资料(工作中匮乏的知识)
  3. QinQ 技术解析
  4. HDU 6695 Welcome Party (贪心)
  5. CentOS 7 启用中文输入法
  6. C#WinForm 窗体回车替换Tab
  7. 继续搞我的linux
  8. ubuntu查看时间同步服务器的匹配源
  9. $.extend() $.fn.extend()
  10. 使用osgearth2.9 rex引擎在Qt中黑屏的问题修复