什么是 addsingleton、addscoped 和 add transient c# asp.net core?-kb88凯时官网登录

时间:2023-09-06
阅读:

可以通过三种方式在 startup.cs 中注册依赖项。 ie。 addsingleton、addscoped 和 addtransient。

添加 singleton

当我们将一种类型注册为单例时,整个过程中只有一个实例可用。 application and for every 请求。

it is similar to having a static object.

the instance is created for the first request and the same is available throughout the 应用程序和每个后续请求。

public void configureservices(iservicecollection services){
   services.addsingleton()
}

添加scoped

当我们将一个类型注册为scoped时,一个实例在整个 按请求申请。当新的请求到来时, 新实例已创建。添加范围指定每个对象可用一个对象 请求。

public void configureservices(iservicecollection services){
   services.addscoped()
}

添加瞬态

当我们将一个类型注册为瞬态时,每次都会创建一个新的实例。瞬态 为每个服务/控制器以及每个请求创建新实例 每个用户。

public void configureservices(iservicecollection services){
   services.addtransient()
}

 

 

参数 添加 singleton 添加 scoped 添加 transient
实例 每个请求/每个
user.每个请求一个。不同的 每次。disposed应用关闭请求结束请求结束used in当单例 实现是必需的。具有不同 每个用户的行为。重量轻, 每个用户的行为。轻量级和 无状态服务。
返回顶部
顶部
网站地图