essay | tech | year-summary | about

返回上级菜单

DI in c#


日期:2022-03-13T00:00:00Z

note for myself.

DI lifetime (Service lifetimes)

Transient
Scoped
Singleton

Framework-provided services

https://docs.microsoft.com/en-us/dotnet/core/extensions/dependency-injection#framework-provided-services

Service Type Lifetime
Microsoft.Extensions.DependencyInjection.IServiceScopeFactory Singleton
IHostApplicationLifetime Singleton
Microsoft.Extensions.Logging.ILogger Singleton
Microsoft.Extensions.Logging.ILoggerFactory Singleton
Microsoft.Extensions.ObjectPool.ObjectPoolProvider Singleton
Microsoft.Extensions.Options.IConfigureOptions Transient
Microsoft.Extensions.Options.IOptions Singleton
System.Diagnostics.DiagnosticListener Singleton
System.Diagnostics.DiagnosticSource Singleton

Service registration methods

https://docs.microsoft.com/en-us/dotnet/core/extensions/dependency-injection#service-registration-methods

Default service container replacement

https://docs.microsoft.com/en-us/dotnet/core/extensions/dependency-injection-guidelines#default-service-container-replacement

Ref

https://docs.microsoft.com/en-us/aspnet/core/fundamentals/dependency-injection
https://docs.microsoft.com/en-us/dotnet/core/extensions/dependency-injection