1. 程式人生 > >瞭解ASP.NET Core 依賴注入,看這篇就夠了 於2017年11月6日由jesseliu釋出

瞭解ASP.NET Core 依賴注入,看這篇就夠了 於2017年11月6日由jesseliu釋出

 var services = new ServiceCollection()
.AddScoped<IOperationScoped, Operation>()
.AddTransient<IOperationTransient, Operation>()
.AddSingleton<IOperationSingleton, Operation>();

接下來我們用ServiceProvider.CreateScope方法建立一個Scope

var provider = services.BuildServiceProvider();
using (var
scope1 = provider.CreateScope()) { var p = scope1.ServiceProvider; var scopeobj1 = p.GetService<IOperationScoped>(); var transient1 = p.GetService<IOperationTransient>(); var singleton1 = p.GetService<IOperationSingleton>(); var scopeobj2 = p.GetService<IOperationScoped>(); var
transient2 = p.GetService<IOperationTransient>(); var singleton2 = p.GetService<IOperationSingleton>(); Console.WriteLine( $"scope1: { scopeobj1.OperationId }," + $"transient1: {transient1.OperationId}, " + $"singleton1: {singleton1.OperationId}"); Console.WriteLine($"scope2: { scopeobj2.OperationId }, "
+ $"transient2: {transient2.OperationId}, " + $"singleton2: {singleton2.OperationId}"); }