我们很高兴地宣布发布.NET Core 2.2。它包括对运行时的诊断改进,对ARM32 for Windows和Azure Active Directory for SQL Client的支持。此版本中最大的改进是在ASP.NET Core中。

ASP.NET Core 2.2Entity Framework Core 2.2

您可以在Windows,macOS和Linux上下载并开始使用.NET Core 2.2:

Visual Studio 15.9,Visual Studio for Mac和Visual Studio Code 支持.NET Core 2.2 。

对于.NET Core和ASP.NET Core,可以在microsoft / dotnet上获得Docker镜像。

您可以在.NET Core 2.2发行说明中查看该发行版的完整详细信息。发行说明中包含相关说明,已知问题和解决方法。请在评论或dotnet / core#2098中报告您发现的任何问题。

感谢为.NET Core 2.2做出贡献的每个人。您已经帮助.NET Core成为更好的产品!

本次发布包含以下特性:

分层编译(Tiered Compilation)

分层编译是一种功能,使运行时能够更自适应地使用实时(JIT)编译器,以在启动时获得更好的性能并最大化吞吐量。它作为.NET Core 2.1中的选择加入功能添加,然后在.NET Core 2.2 Preview 2中默认启用。我们认为我们还没有准备好在最终的.NET Core 2.2版本中默认启用它,所以我们将其切换回选择加入,就像.NET Core 2.1一样。它在.NET Core 3.0中默认启用,我们希望它保留在该配置中。

运行时事件(Runtime Events)

通常需要监视运行时服务(如当前进程的GC,JIT和ThreadPool),以了解这些服务在运行应用程序时的行为方式。在Windows系统上,这通常使用ETW并监视当前进程的ETW事件来完成。虽然这种方法仍然有效,但使用ETW并不总是容易或可能。无论您是在低权限环境中运行还是在Linux或macOS上运行,都可能无法使用ETW。

从.NET Core 2.2开始,现在可以使用EventListener类来使用CoreCLR事件。这些事件描述了GC,JIT,ThreadPool和interop的行为。它们是在Windows上作为CoreCLR ETW提供程序的一部分公开的相同事件。这允许应用程序使用这些事件或使用传输机制将它们发送到遥测聚合服务。

在SqlConnection中支持AccessToken

SQL Server的ADO.NET提供程序SqlClient现在支持将AccessToken属性设置为使用Azure Active Directory对SQL Server连接进行身份验证。要使用此功能,您可以使用Microsoft.IdentityModel.Clients.ActiveDirectory NuGet包中包含的Active Directory身份验证库for .NET获取访问令牌值。

以下示例显示如何使用Azure Active目录验证SQL Server连接:

有关更多信息,请参阅ADAL.NETAzure Active Directory文档

在Main之前注入代码

.NET Core现在可以在通过Startup Hook运行应用程序main方法之前注入代码。启动挂钩使主机可以在部署应用程序后自定义应用程序的行为,而无需重新编译或更改应用程序。

我们希望托管服务提供商定义自定义配置和策略,包括可能影响主入口点的加载行为的设置,例如AssemblyLoadContext行为。钩子可用于设置跟踪或遥测注入,设置回调以进行处理或其他依赖于环境的行为。钩子与入口点分开,因此不需要修改用户代码。

有关更多信息,请参阅主机启动挂钩

Windows ARM32

我们正在添加对Windows ARM32的支持,类似于我们在.NET Core 2.1中添加的Linux ARM32支持。Windows已经支持使用Windows IoT Core的ARM32 一段时间了。作为Windows Server 2019发行版的一部分,还为Nanoserver添加了ARM32支持。.NET Core可以在Nanoserver和IoT Core上使用。

将在Docker Hub 上的microsoft / dotnet上为ARM32的Nanoserver提供Docker。

我们遇到了一个迟到的错误,阻止我们今天发布针对Windows ARM32的.NET Core版本。我们预计这些版本将在2019年1月的.NET Core 2.2.1中使用。

平台支持

以下操作系统支持.NET Core 2.2:

  • Windows客户端:7,8.1,10(1607+)
  • Windows Server:2008 R2 SP1 +
  • macOS:10.12+
  • RHEL:6+
  • Fedora:26岁以上
  • Ubuntu:16.04+
  • Debian:9+
  • SLES:12+
  • openSUSE:42.3+
  • Alpine: 3.7+

芯片支持如下:

  • Windows,macOS和Linux上的x64
  • Windows上的x86
  • Linux上的ARM32(Ubuntu 16.04 +,Debian 9+)
  • Windows上的ARM32(1809+; 1月份可用)

重磅!!!微软发布.NET Core 2.2的更多相关文章

  1. 微软发布.Net Core 3.0 RC1,最终版本定于9月23日

    2019.9.17 微软 宣布推出.NET Core 3.0 Release Candidate 1.就像Preview 9一样,主要专注于为 .NET Core 3.0 发布最终版本 .现在变得非常 ...

  2. 译:微软发布.NET应用架构指南草案

    原文<Microsoft Announces Draft .NET Architecture Guidance> 译注:上周微软发布了全新的<.NET应用架构指南>草案,以征求 ...

  3. List多个字段标识过滤 IIS发布.net core mvc web站点 ASP.NET Core 实战:构建带有版本控制的 API 接口 ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目 Using AutoFac

    List多个字段标识过滤 class Program{  public static void Main(string[] args) { List<T> list = new List& ...

  4. 使用 dotnet CLI 来打包和发布 .NET Core nuget package

    原文链接:使用 dotnet CLI 来打包和发布 .NET Core nuget package 如何使用 visual studio 2015/2017 打包和发布 Nuget package, ...

  5. 微软发布了开发社区采用.NET Standard的最新信息

    最近,微软发布了开发社区当前采用.NET Standard的最新信息..NET Standard是API的正式规范,现有.NET实现在不同平台的是通用的(从而允许跨平台开发).当前规范(版本2.0)在 ...

  6. .NET Conf 2019 大会上发布.NET Core 3.0

    北京时间今天凌晨如期在.NET Conf 上发布.NET Core 3.0,Keynotes 由Scott Hunter 主演,主要围绕.NET Core 3.0的新特性和社区展开. 多功能性是.Ne ...

  7. 20190705-记IIS发布.NET CORE框架系统之所遇

    新手在IIS上发布.NET CORE框架的系统之注意事项 序:本篇随笔是我的处子笔,只想记录自己觉得在系统发布过程中比较重要的步骤,一来,忝作自己的学习笔记,以备不时之需,二来,也希望可以帮助有需要的 ...

  8. 不止开源,不止跨平台。微软的 .NET Core 还有哪些强大之处值得我们学习?

    自从 2016 年微软发布了 .NET Core 1.0,至今 4 年的时间里,.NET Core 历经 7 个正式版本和几十个 Preview 版本..NET Core 作为最通用的框架,和其他软件 ...

  9. 在离线环境中发布.NET Core至Windows Server 2008

    在离线环境中发布.NET Core至Windows Server 2008 0x00 写在开始 之前一篇博客中写了在离线环境中使用.NET Core,之后一边学习一边写了一些页面作为测试,现在打算发布 ...

随机推荐

  1. 学习CountDownLatch

    对比 使用CyclicBarrier 上次用Barrier方式实现了线程等待一组完成,这次用CountDownLatch来实现 我的理解CountDownLatch 采用的方式是计数器方式,每执行完一 ...

  2. SEO优化:浅析关键词出现在网站哪些地方更有利?

    关键词出现在网站哪些地方符合SEO?进行网站的SEO时,关键词需要出现在整个网站的适当地方.下面列出几个重要的关键词摆放的地方.以下列出的10个地方希望能够帮助到大家. 1.网站Title部分. 2. ...

  3. 使用xshell链接虚拟机的方法

    给大家介绍一下虚拟机和Xshell5连接的基本配置1.安装虚拟机,跟着提示一步一步安装即可,注意添加镜像文件,虚拟机就完成了.2.下载一个Xshell5,安装好之后.要修改虚拟机的网卡状态    1) ...

  4. JQuery制作基础的无缝轮播与左右点击效果

    在网页中我们想要的无缝轮播左右循环有好多好多中,这是我第一个轮播效果,也是最基础的,和大家分享一下,对于初学者希望你们能有所借鉴,对于大神我想让你们尽情的虐我给我宝贵的意见. 这个是我要的效果 进入正 ...

  5. Global一点小经验

    Global: Global.asax 文件,有时候叫做 ASP.NET 应用程序文件,提供了一种在一个中心位置响应应用程序级或模块级事件的方法,他位于应用程序根目录下. 这个 Global.asax ...

  6. DX11 Without DirectX SDK--04 使用DirectX Tool Kit帮助开发

    回到 DirectX11--使用Windows SDK来进行开发 DirectX Tool Kit下载 DirectX Tool Kit是一个包含许多类的集合,用于为公共Windows平台编写Dire ...

  7. 杨老师课堂之JavaScript定时器_农夫山泉限时秒杀案例

    预览效果图: 使用到的知识点: 定时器 setInterval(函数,毫秒):在指定的毫秒数后调用函数或执行一段代码 取消定时器 clearInterval:取消由setInterval设置的定时器 ...

  8. mysql读写分离总结

    随着一个网站的业务不断扩展,数据不断增加,数据库的压力也会越来越大,对数据库或者SQL的基本优化可能达不到最终的效果,我们可以采用读写分离的策略来改变现状.读写分离现在被大量应用于很多大型网站,这个技 ...

  9. 20个大大节省你时间的HTML5开发工具

    Rendera 如果你希望有个环境可以测试.浏览和体验各种不同的 CSS/HTML 和 JavaScript 代码,Rendera 为你提供了实时的运行结果.类似 RunJS. Patternizer ...

  10. 关于PHP处理Json数据的例子

    最近工作需要在原来静态看板(大屏)页面的基础上,实现数据的动态展示,而且需要定时刷新. 接到任务后就马不停蹄的开始修改页面: 显然这个需求最好的解决方法就是用Ajax对后台数据进行定时请求,在前端页面 ...