.net core 注入的几种方式

一.注册的几种类型:

 services.TryAddSingleton<IHttpContextAccessor, HttpContextAccessor>();//单利模式,整个应用程序生命周期以内只创建一个实例 
 services.Add(new ServiceDescriptor(typeof(IAtomService<>), typeof(AtomService<>), ServiceLifetime.Scoped));//泛型注入
 services.AddScoped<ISecurityService, SecurityService>();//在同一个Scope内只初始化一个实例 ,可以理解为( 每一个request级别只创建一个实例,同一个http request会在一个 scope内)
 services.Transient<ISecurityService, SecurityService>();//每一次GetService都会创建一个新的实例

 二.注入的几种方式:

1.构造函数注入:

2.view注入:

3.通过 HttpContext来获取实例

4.直接注入:

原文地址:https://www.cnblogs.com/zmaiwxl/p/9518662.html