什么是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. Linux系统sed命令常用参数实战

    Linux系统sed命令常用参数实战 常用参数 -n 输出某行的文本内容,通常与p联合使用, -e 命令行模式下进行sed的动作编辑,输出编辑后的内容,源文件不会发生变化 -f 以命令中指定的scri ...

  2. 六张图详解LinkedList 源码解析

    LinkedList 底层基于链表实现,增删不需要移动数据,所以效率很高.但是查询和修改数据的效率低,不能像数组那样根据下标快速的定位到数据,需要一个一个遍历数据. 基本结构 LinkedList 是 ...

  3. 针对elementUI 中InfiniteScroll按需引入的一点注意事项

    大家为了节省空间,常常进行按需引入来节省空间,这里我给大家来介绍一下element中按需引入无限滚动指令注意的事项. 针对前面element 按需引入的一些配置这里就不再详细介绍了. 那么这里讲的是在 ...

  4. centos 7搭建svn+apache及权限控制

    SVN服务器运行模式: 模式1:svn服务器单独运行 监听: 3690端口 访问: svn://IP 模式2: svn 服务器+ apache : 80 端口 访问: http://IP 1. #安装 ...

  5. Issues in multiparty dialogues(科普性质)

    多人对话过程中存在的问题: 1)对于双方对话:存在明显的Speaker和Listener/addressee.但对于多人会话:就存在很多种情况.Clark[6]给出了对listener的分类

  6. 一键部署bash脚本怎么写

    因为我开源的一键部署应用到linux服务器的AntDeploy, 在linux部署是需要安装一个agent服务(systemctl服务) 如果是手动第一次安装的话 需要敲 下载 wget 解压 tar ...

  7. 【docker专栏4】使用docker安装nginx提供web服务

    一般学习一项技术,会先用一个最简单的例子或最典型的例子来向大家讲解入门内容,所以此文为大家介绍使用docker安装nginx容器服务.从基础使用的角度来讲,此文几乎涵盖了docker最核心的内容:镜像 ...

  8. day08 集合API | 遍历_ | 泛型 |增强For循环

    集合(续) 集合间的操作 集合提供了如取并集,删交集,判断包含子集等操作 package collection; import java.util.ArrayList; import java.uti ...

  9. dos命令-*02

    1.cmd状态下 tab快速补充文件名 ↑↓快速填充之前输入的文件名 2.//这是Java的快速入门 //对代码的相关说明 //1.public class Hello 表示Hello是一个类,是一个 ...

  10. day04_数组

    数组 学习目标: 1. jvm内存图入门 2. 一维数组的使用 3. 二维数组的使用 4. 数组的内存结构 5. 数组中常见算法 6. 数组中常见的异常 一.JVM内存图入门 java程序运行在jvm ...