今天,发布了.NET 5.0 Preview5。主要对它进行了一小部分新功能和性能的改进。.NET 5.0 Preview 4包含了一些计划和.NET 5.0要交付的内容。

现在,大多数的功能都已经包含在里面,但是有许多功能还未到完成的状态。预计这个版本在Preview 7中完善。

可以下载适用于Windows,macOS和Linux的.NET 5.0 Preview 5

ASP.NET CoreEF Core也在今天发布了

我们需要使用Visual Studio 2019 16.7才能使用.NET 5.0。 安装最新版本的C#扩展,以将.NET 5.0与Visual Studio Code结合使用。 Mac的Visual Studio尚不支持.NET 5.0。

发布说明:

RyuJIT改进

对RyuJIT JIT编译器进行了以下改进

Native exports

曾要求为导出本机二进制文件启用导出功能,这些功能已在很长一段时间内调用.NET代码。 这是一个很好的方案,现在通过.NET 5.0启用它。 该功能的构建块是托管对UnmanagedCallersOnlyAttribute的API支持。

这个功能是创建更高级别体验的基础。 团队的Aaron Robinson一直在从事.NET Native Exports项目,该项目为将.NET组件作为本机库发布提供了更完整的体验。 目前正在寻求有关此功能的反馈,以帮助我们确定该方法是否应包含在产品中。

.NET本地导出项目使我们能够:

  • 公开自定义的 native exports。
  • 不需要像COM这样的高级互操作技术。
  • 跨平台工作

现有的项目可以实现类似的方案,例如:

[重大变化]删除.NET 5.0中内置的WinRT支持

注意:这个变化将出现在预览6中。这是一个早期的通知。

Windows Runtime(WinRT)是Windows中公开使用的新API的技术和ABI。 您可以通过.NET代码调用这些API,类似于使用C ++的方法。 在.NET Core 3.0中添加了对WinRT interop的支持,这是对Windows桌面客户端框架(Windows Forms和WPF)添加支持的一部分。

最近,一直在与Windows团队紧密合作,以更改和改进WinRT interop与.NET的协作方式。 我们已用Windows团队在.NET 5.0中提供的C#/WinRT工具链替换了内置的WinRT支持。 WinRT互操作中的此更改是一项重大更改,使用WinRT的.NET Core 3.x应用将需要重新编译。 我们将在即将来临的预览中提供更多信息。

在.NET 5中的支持WinRT API中明确指出了这些好处:

  • WinRT互操作可以独立于.NET runtime进行开发和改进。
  • 使WinRT互操作与为其他操作系统(如iOS和Android)提供的互操作系统对称。
  • 可以利用许多其他。net特性(AOT, c#特性, IL linking)。
  • 简化.NET运行时代码库(删除6万行代码)。

将System.DirectoryServices.Protocols扩展到Linux和macOS

添加对System.DirectoryServices.Protocols的跨平台支持。 在Preview 5中,添加了对Linux的支持,并在Preview 6中添加了对macOS的支持。对Windows支持已经存在。

System.DirectoryServices.Protocols是比System.DirectoryServices更低级别的API,并且启用更多方案。 System.DirectoryServices包含仅适用Windows的概念/实现,因此制作跨平台并不是一个很容易的事情。

这两个API都支持对目录服务服务器(如LDAPActive Directory)进行控制和交互。

Alpine 3.12

本周,增加了对Alpine 3.12,.NET Core 3.1和.NET 5的支持。 Alpine Linux的维护者于5月29日宣布发布Alpine 3.12。 与过去相比,以更快,更可预测的方式增加对新Linux发行版的支持。

会发现他们已经开始使用一种新的发布模型来发布新发行版的问题。 这就是我们对Alpine 3.12所做的。 将来,我们计划更早地发布这些问题。 例如,需要跟踪的下一个发行版可能是Ubuntu 20.10。 尚未决定,但可能会在7月或8月发布该发行版的类似问题,以准备10月发行的新Ubuntu版本。

最后

感谢大家对.NET 5.0预览版的反馈以及您的早期反馈。 正如文章的简介中所建议的那样,现在才发布大约一半。 现在包括了大多数功能,但是我们希望在接下来的几个预览中会进行许多更改,以完成体验并消除仍然存在的粗糙边缘。

最新文章

  1. 特征检测(feature detection)的一些资料
  2. 11个让你吃惊的 Linux 终端命令
  3. LINUX一切皆文件
  4. EV电池指标及特点
  5. node笔记——gulp修改静态文件的名字
  6. C# 采用线程重绘图形要点记录
  7. vim中的一些高级命令的使用
  8. Yii 将对象转化成数组
  9. mysql查询随机几条数据(速度快)
  10. (转)C#文件操作
  11. Android Fragment(碎片)的使用
  12. unity3D的FingerGestures小工具
  13. HDU 5880 Family View
  14. Jmeter之app性能测试(ios,android)
  15. ThinkPHP中使用PHPMailer邮件类
  16. poj 2486 Apple Tree(树形DP 状态方程有点难想)
  17. vs工具
  18. Oracle篇 之 多表查询
  19. 使用Excel批量提取文件名
  20. django-个人博客登录及权限验证功能的实现

热门文章

  1. 类linux 系统上端口被占用
  2. 【python代码】 最大流问题+最小花费问题+python(ortool库)实现
  3. removebg抠图小工具
  4. python3.x 基础一:str字符串方法
  5. ## 0521Day04内部类
  6. 【C++】VS Code配置
  7. 微信小程序语音同步智能识别的实现案例
  8. SSIS 数据类型 第二篇:变量的数据类型
  9. mysql去重复关键字distinct的用法
  10. hackone ssrf