乘風破浪,遇見最佳跨平台跨終端框架.Net Core/.Net生態 – 官方擴展集錦(Microsoft.Extensions on Nuget)
- 2022 年 8 月 21 日
- 筆記
- .NET, .NET Core, Microsoft.Extensions, Nuget
什麼是Microsoft.Extensions
.NET Platform Extensions是一套.Net官方的API集合,提供了一些常用的編程模式和實用工具,例如依賴項注入、日誌記錄、快取、Host以及配置等等。
//docs.microsoft.com/en-us/dotnet/api/?view=dotnet-plat-ext-6.0
.NET Platform Extensions程式碼已經從之前單獨維護的//github.com/dotnet/extensions轉移到了//github.com/dotnet/runtime和//github.com/dotnet/aspnetcore中統一管理。
Microsoft.Extensions Nuget包
這些都是官方輪子,但是也是平時我們的使用首選。
Caching組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Caching.Memory | >= .NET 5.0; >= .NET Core App 2.0; >= .NET Standard 2.0; >= .NET Framework 4.6.1; |
Microsoft.Extensions.Caching.Abstractions | >= .NET 5.0; >= .NET Core App 2.0; >= .NET Standard 2.0; >= .NET Framework 4.6.1; |
Microsoft.Extensions.Caching.SqlServer | >= .NET 7.0; >= .NET Core App 2.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Caching.StackExchangeRedis | >= .NET 7.0; >= .NET Core App 2.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Caching.Redis | >= .NET Standard 2.0; |
Microsoft.Extensions.Caching.Cosmos | >= .NET Standard 2.0; |
Configuration組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Configuration | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.Abstractions | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.Binder | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.CommandLine | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.EnvironmentVariables | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2 |
Microsoft.Extensions.Configuration.FileExtensions | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.Ini | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.Json | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.Xml | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.UserSecrets | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.KeyPerFile | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Configuration.AzureAppConfiguration | >= .NET Standard 2.0; |
Dependency Injection組
名稱 | 備註 |
---|---|
Microsoft.Extensions.DependencyInjection | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.DependencyInjection.Abstractions | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.DependencyInjection.Specification.Tests | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Dependency Model組
名稱 | 備註 |
---|---|
Microsoft.Extensions.DependencyModel | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
File Providers組
名稱 | 備註 |
---|---|
Microsoft.Extensions.FileProviders.Abstractions | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.FileProviders.Physical | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.FileProviders.Composite | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.FileProviders.Embedded | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
File System Globbing組
名稱 | 備註 |
---|---|
Microsoft.Extensions.FileSystemGlobbing | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Hosting組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Hosting | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Hosting.Abstractions | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Hosting.WindowsServices | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Hosting.Systemd | >= .NET 6.0; >= .NET Standard 2.1; |
Http Client Factory組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Http | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Http.Polly | >= .NET Standard 2.0; |
Logging組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Logging | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.Abstractions | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.Configuration | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.Console | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.Debug | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.EventSource | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.EventLog | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.TraceSource | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Logging.ApplicationInsights | >= .NET Standard 2.0; |
Microsoft.Extensions.Logging.AzureAppServices | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Options組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Options | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Options.ConfigurationExtensions | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Options.DataAnnotations | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Primitives組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Primitives | >= .NET 6.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Diagnostics組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Diagnostics.HealthChecks | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore | >= .NET 7.0; |
JSInterop組
名稱 | 備註 |
---|---|
Microsoft.JSInterop | >= .NET 7.0; |
Microsoft.JSInterop.WebAssembly | >= .NET 7.0; |
Localization組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Localization | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Localization.Abstractions | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Object Pool組
名稱 | 備註 |
---|---|
Microsoft.Extensions.ObjectPool | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
WebEncoders組
名稱 | 備註 |
---|---|
Microsoft.Extensions.WebEncoders | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Identity組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Identity.Core | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Microsoft.Extensions.Identity.Stores | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2 |
Azure組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Azure | >= .NET Standard 2.0; |
Features組
名稱 | 備註 |
---|---|
Microsoft.Extensions.Features | >= .NET 7.0; >= .NET Standard 2.0; >= .NET Framework 4.6.2; |
Machine Learning組
名稱 | 備註 |
---|---|
Microsoft.Extensions.ML | >= .NET Standard 2.0; |
過期組
Microsoft.System Nuget包
System組
名稱 | 備註 |
---|---|
System.Threading.Tasks.Extensions | >= .NET Core 2.1; >= .NET Standard 1.0; >= .NET Framework 4.6.1; |
System.Diagnostics.DiagnosticSource | >= .NET 5.0; >= .NETStandard 2.0; >= .NETFramework 4.6.1; |
System.Buffers | >= .NET Core 2.0; >= .NET Standard 1.1; >= .NET Framework 4.5; |
System.Memory | >= .NET Core 2.1; >= .NET Standard 1.1; >= .NET Framework 4.6.1; |