- AddTransient 每次service请求都是获得不同的实例
- 请求获取-(GC回收-主动释放) 每一次获取的对象都不是同一个
- AddScoped 对于同一个请求返回同一个实例,
- 请求开始-请求结束 在这次请求中获取的对象都是同一个
- 不同的请求返回不同的实例
- 同一个请求中也会区分GET POST 方式
- AddSingleton 每次都是获得同一个实例
- 在全局都是共享的,其生命周期最长。
- 项目启动-项目关闭 相当于静态类 只会有一个
-
注意:
由于AddScoped对象是在请求的时候创建的
所以不能在AddSingleton对象中使用
甚至也不能在AddTransient对象中使用
-
权重为
-
AddSingleton→AddTransient→AddScoped
-
不然则会抛如下异常
-
asp.net core AddTransient、AddScoped和AddSingleton三者的区别
最新推荐文章于 2024-05-09 16:55:48 发布