.NET CORE 存在三種依賴注入的方式
AddTransient
:瞬時模式:每次請求,都獲取一個新的實例仅政。即使同一個請求獲取多次也會是不同的實例
例如:Controller添加一個IUser 的依賴,在Action中啃洋,IUser的實例是不同的碾盐。
使用方式:services.AddTransient<IOperationTransient, Operation>();
AddScoped
:每次請求,都獲取一個新的實例衰琐。同一個請求獲取多次會得到相同的實例
例如:上例中巡验,同一個Action中,實例是相同的碘耳。
使用方式:services.AddScoped<IMyDependency, MyDependency>();
AddSingleton
:單例模式:每次都獲取同一個實例
使用方式:services.AddSingleton<ISchedulerFactory, StdSchedulerFactory>();
//注冊ISchedulerFactory的實例
也可以直接注入一個類显设,例如helper類:services.AddTransient<ExportHelper>();