微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

什么是 AddSingleton、AddScoped 和 Add Transient C# Asp.net Core?

什么是 AddSingleton、AddScoped 和 Add Transient C# Asp.net Core?

可以通过三种方式在 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<ILog,Logger>()
}

添加Scoped

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

public void ConfigureServices(IServiceCollection services){
   services.AddScoped<ILog,Logger>()
}

添加瞬态

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

public void ConfigureServices(IServiceCollection services){
   services.AddTransient<ILog,Logger>()
}

参数 添加 Singleton 添加 Scoped 添加 Transient
实例 每个请求/每个
user.每个请求一个。 不同的 每次。 disposed 应用关闭 请求结束 请求结束 Used in 当单例 实现是必需的。 具有不同 每个用户的行为。 重量轻, 每个用户的行为。 轻量级和 无状态服务。

以上就是什么是 AddSingleton、AddScoped 和 Add Transient C# Asp.net Core?的详细内容,更多请关注编程之家其它相关文章

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐