什么是Microsoft.Extensions

.NET Platform Extensions是一套.Net官方的API集合,提供了一些常用的编程模式和实用工具,例如依赖项注入、日志记录、缓存、Host以及配置等等。

https://docs.microsoft.com/en-us/dotnet/api/?view=dotnet-plat-ext-6.0

https://github.com/aspnet/Announcements/issues/411

.NET Platform Extensions代码已经从之前单独维护的https://github.com/dotnet/extensions转移到了https://github.com/dotnet/runtimehttps://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.Extensions.DiagnosticAdapter >= .NET Core 2.0;
>= .NET Standard 2.0;
>= .NET Framework 4.6.1;
Microsoft.Extensions.Configuration.NewtonsoftJson >= .NET Standard 2.0;
Microsoft.Extensions.Configuration.FileProviderExtensions >= .NET Framework 4.5.1;
Mono.WebAssembly.Interop >= .NET Standard 2.1;
Microsoft.Extensions.PlatformAbstractions >= .NET Standard 1.3;
>= .NET Framework 4.5.1;
Microsoft.Extensions.CommandLineUtils >= .NET Standard 1.3;
>= .NET Framework 4.5.1;
Microsoft.Extensions.Globalization.CultureInfoCache >= .NET Standard 1.1;
Microsoft.Extensions.SecretManager.Tools
Microsoft.Extensions.Logging.Filter >= .NET Standard 1.1;
Microsoft.Extensions.WebEncoders.Core >= .NET Framework 4.5.1;
Microsoft.Extensions.MemoryPool >= .NET Framework 4.5.1;
Microsoft.Extensions.Caching.SqlConfig.Tools
Microsoft.Extensions.CodeGenerators.Mvc
Microsoft.Extensions.CodeGeneration
Microsoft.Extensions.CodeGeneration.Templating
Microsoft.Extensions.CodeGeneration.Core
Microsoft.Extensions.CodeGeneration.EntityFramework
Microsoft.NETCore.Platforms >= .NET Standard 1.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;

参考

乘风破浪,遇见最佳跨平台跨终端框架.Net Core/.Net生态 - 官方扩展集锦(Microsoft.Extensions on Nuget)的更多相关文章

  1. 转: 跨终端Web之Hybrid App

    转:  http://www.infoq.com/cn/articles/hybrid-app 编者按:InfoQ开设新栏目“品味书香”,精选技术书籍的精彩章节,以及分享看完书留下的思考和收获,欢迎大 ...

  2. 跨终端Web之Hybrid App

    Native App(以下简称Native)和Mobile Web(以下简称Web)二者混合开发的产物被称为Hybrid App(以下简称Hybrid).Hybrid并不是什么新概念,最早可以追溯到S ...

  3. 单纯觉得是篇好文——跨终端Web之Hybrid App

    [reference]http://www.infoq.com/cn/articles/hybrid-app#theCommentsSection 编者按:InfoQ开设新栏目“品味书香”,精选技术书 ...

  4. 跨终端 Web

    跨终端 Web(移动优先|响应式|HTML5|Hybrid|桌面+移动应用|一线前端负责人联袂推荐) 徐凯  著   ISBN 978-7-121-23345-6 2014年6月出版 定价:55.00 ...

  5. 跨终端Web

    1.终端vs设备 H5页面运行在同一设备的不同终端下. (1)Web浏览器. (2)微信.QQ浏览器. (3)移动App的Webview. (4)TV机顶盒. 2.跨终端的实现方式 (1)响应式 存在 ...

  6. 【开源】C#跨平台物联网通讯框架ServerSuperIO(SSIO)

    [连载]<C#通讯(串口和网络)框架的设计与实现>-1.通讯框架介绍 [连载]<C#通讯(串口和网络)框架的设计与实现>-2.框架的总体设计 目       录 C#跨平台物联 ...

  7. [更新]跨平台物联网通讯框架 ServerSuperIO v1.2(SSIO),增加数据分发控制模式

    1.[开源]C#跨平台物联网通讯框架ServerSuperIO(SSIO) 2.应用SuperIO(SIO)和开源跨平台物联网框架ServerSuperIO(SSIO)构建系统的整体方案 3.C#工业 ...

  8. 介绍一个非常好用的跨平台C++开源框架:openFrameworks

    介绍一个非常好用的跨平台C++开源框架:openFrameworks 简介 首先需要说明的一点是: openFrameworks 设计的初衷不是为计算机专业人士准备的, 而是为艺术专业人士准备的, 就 ...

  9. 《跨终端Web》读书笔记

    跨终端的Web成为了趋势,而这本书就是讲了在这种趋势下进行开发的常见问题及其解决方案,可能是限于篇幅,每个方面都没有展开细说,但这是这样让本书干货满满,几乎没有一句废话. 下面是一些笔记. Web的本 ...

随机推荐

  1. DAST 黑盒漏洞扫描器 第二篇:规则篇

    0X01 前言 怎么衡量一个扫描器的好坏,扫描覆盖率高.扫描快.扫描过程安全 而最直接的效果就是扫描覆盖率高(扫的全) 怎么扫描全面,1 流量全面 2 规则漏报低 流量方面上篇已经讲过,这篇主要讲扫描 ...

  2. BI 如何让SaaS产品具有 “安全感”和“敏锐感”(上)

    SaaS模式一经推出,凭借自身的高性价比.低维护成本,无需软硬件维护.无需运维等明晃晃的优点,得到了爆发式的增长,甚至全面改变了软件的开发模式.各位老总的问候语,不知从什么时候开始,都变成了:&quo ...

  3. Nastran的应变方向

    问题 近日使用Nastran做一个算例,在计算频响时发现:位移场是连续的,而应变场不连续.以某一频率处应变场为例,其上表面X.Y方向应变场分布如下图.此处关闭了云图的插值,所显示的为单元的应变,因此云 ...

  4. 【Azure 应用服务】NodeJS Express + MSAL 实现API应用Token认证(AAD OAuth2 idToken)的认证实验 -- passport.authenticate('oauth-bearer', {session: false})

    问题描述 在前两篇博文中,对NodeJS Express应用 使用MSAL + AAD实现用户登录并获取用户信息,获取Authorization信息 ( ID Token, Access Token) ...

  5. kali 漏洞扫描

    前言 漏洞扫描器是一种能够自动在计算机.信息系统.网络及应用软件中寻找和发现安全弱点的程序.它通过网络对目录系统进行探测,向目标系统发送数据,并将反馈数据与自带的漏洞特征库进行匹配,进而列举目标系统上 ...

  6. js 表面学习 - 认识事件

    事件 描述 onchange HTML 元素已被改变 onclick 用户点击了 HTML 元素 onmouseover 用户把鼠标移动到 HTML 元素上 onmouseout 用户把鼠标移开 HT ...

  7. SpringBoot配置多环境下的properties配置文件

    1.新建SpringBoot项目之后,再另外创建两个properties文件 2.配置详情 主文件 dev和test文件 两者只是里面的配置信息有所不同而已,比如mysql, redis, nacos ...

  8. GaussDB(for MySQL) :Partial Result Cache,通过缓存中间结果对算子进行加速

    摘要:华为云数据库高级内核技术专家详解GaussDB(for MySQL)Partial Result Cache特性,如何通过缓存中间结果对算子进行加速? 本文分享自华为云社区<GaussDB ...

  9. Future源码一观-JUC系列

    背景介绍 在程序中,主线程启动一个子线程进行异步计算,主线程是不阻塞继续执行的,这点看起来是非常自然的,都已经选择启动子线程去异步执行了,主线程如果是阻塞的话,那还不如主线程自己去执行不就好了.那会不 ...

  10. Elasticsearch深度应用(上)

    索引文档写入和近实时搜索原理 基本概念 Segments in Lucene 众所周知,Elasticsearch存储的基本单元是shard,ES种一个index可能分为多个shard,事实上每个sh ...