什么是新的。NET Core 3.0?


在Visual Studio 2019最近到来后,微软定义了.NET Core 3.0即将到来的大量新亮点。.NET Core3.0要到今年晚些时候才会发布,但它可以在VS2019中作为评论访问,所以设计人员可以尝试一下(只需简单的更改)。

微软高管亨特表示,.NET Core 3的三个主要特性是:

  • 桌面工作负载和UI互操作性。

  • 人工智能和机器学习。

  • 网络和云应用程序开发生产力。

随着微软在过去几年中不断推动核心活动,.NET Core3.0与.NET Core2.0相比有了重大变化。亨特说:“有了.NET Core 1.0和2.0,我们基本上拥有了.NET Core中的云和Web应用程序开发平台。“我们正在无休止地扩展您可以在.NET Core 3中使用的应用程序。目前,您可以选择使用WinForms和WPF实现桌面应用程序,使用Raspberry PI和小工具实现IoT应用程序。使用ML.NET,您将拥有ML和AI的全部功能。”

.NET Core 3.0的主要功能

NET Core的体系结构环境并入了标准语言规范,以表征使用Framework类库收集可重用资产和使用公共语言运行时来监督项目的执行。

开源平台


此外,每当启动更新版本的Core时,您都可以随时在一台机器上更新到等效版本,而不会对不同的应用程序造成任何影响。

在这里,我们将谈论即将推出的新升级版本。

新的.Net Core 3.0功能

C#8

.NET Core 3.0广泛支持C#8。C#8中的新亮点包括可为空的引用类型、异步流、范围和文件以及切换表达式。

这是确保适当丢弃对象的另一种方法,因为它使对象在作用域中保持活动状态。一旦对象超出范围,它自然会丢弃该对象。

解析和排列修复程序

  • 准确解析和格式化负零。

  • 精确舍入任意长度的输入并进行解析。

  • 通过执行不区分大小写的检查和解析Infinity,并在适用时支持前置加号,从而有效地执行NaN。

EEE浮点增强功能

随着IEEE754-2008的修改,浮点API正在刷新以获得同意。它打算发现每一个需要的活动,并确保它们通常符合IEEE规范。

更多BCL改进

.NET Core2.1中提供的Span<T>、Memory<T>等类型将在.NET Core3.0中得到改进。有了这一点,一些常规操作(如跨转、格式化、解析和切片)现在将更有效地执行。

事实上,即使是类似字符串的类型,当它们与Dictionary<TKey,TValue>和不同的累积一起使用时也表现出改进。以下是升级版本:

  • Brotli支持与HttpClient结合。

  • 不安全,打开箱子。

  • 复数算术运算符。

  • CancerationToken.Unregister(取消注册令牌)。

  • StringBuilder.GetChunks。

  • RandomNumberGenerator.GetInt32。

  • IPEndPoint解析。

现代浏览器与当前媒体控制

NET桌面应用程序开发使用Windows Media Player和Internet Explorer来演示HTML和播放媒体文档。因此,客户可以利用Microsoft Edge和媒体播放器的焦点来支持最新的指导方针。

分层/分层编译

默认情况下,.NET Core 3.0支持运行库更自适应地利用实时(JIT)编译器来更高效、更好地执行。

Windows桌面应用程序

可以使用Windows窗体和WPF组装Windows桌面应用程序。使用.NET Core 3.0。它支持利用现代控件和Windows UI XAML库(WinUI)中熟悉的样式。它是Windows.NET Core 3.0 SDK的一部分。

密码学

新增了AES-CCM和AES-GCM密码的帮助,通过System.Security.Cryptography.AesGcm和System.Security.Cryptography.AesCcm实现。这些复杂的算法既有关联数据(AEAD)算法,也有认证加密算法。

作为C级API、WinRT和COM,Windows提供了丰富的本机API。在.NET Core 3.0中,它支持激活WinRT API和协同创建COM API的能力。

Windows桌面的MSIX部署

MSIX可用于将.NET Core 3.0桌面应用程序交付到Windows 10。Windows应用程序打包项目使您能够将MSIX与独立的.NET Core应用程序捆绑在一起。

快速隐式JSON支持

新的隐式JSON支持是低赋值、高级的,并且依赖于Span<byte>。在.NET Core3.0中,包含了三个与JSON相关的新的基本类型。

组件可卸载性

这是AssemblyLoadContext的另一个功能,从API的角度来看,它很简单,只有几个新的API就可以揭开它的面纱。它允许为实例化类型、设置为清空的加载器、Get Together本身和静电字段释放所有内存。有了它,应用程序可以堆叠和清空集合,而不会发生内存溢出。

.NET Core 3平台支持

它支持多种操作系统,如Windows Server:2012 R2 SP1+、Windows Client:7、8.1、10(1607+)、RHEL:6+、MacOS:10.12+、Ubuntu:16.04+、Fedora:26+、SLES:12+、Debian:9+、Alpine:3.8+和openSUSE:42.3+。