.NET 5.0預覽版6釋出:支援Windows ARM64裝置

張善友發表於2020-06-26


2020年6月25日,微軟dotnet團隊在部落格宣佈了第六個 .NET 5.0 的預覽版:https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-6/,在改進效能的同時增加了一些新的功能。ASP.NET CoreEF Core也將於今日釋出了。注意:EF Core 5.0 不支援 .NET Standard 2.0 或 .NET Framework,但是EF Core 5.0是支援.NET Core 3.1。 將所有內容組合在一起的里程碑式版本離預覽版 8 中完成功能只有兩步之遙,最終的 GA 版本定於 11 月釋出,2019年Build大會上宣佈.NET 5時,微軟就明確說了,"未來將只有一個.NET,您將能夠使用它來定位Windows、Linux、macOS、iOS、Android、tvOS、watchOS和WebAssembly等等。 微軟在4 月份宣佈預覽版 2時宣佈,它已經處理了其 .NET 站點上 50% 的流量。

 dotnet5_platform

自那時以來,一系列穩定的預覽版本一直在逐步修復Issue,完善現有功能和新增新的功能,雖然通常是一個小範圍,不斷敏捷迭代,小步快跑。 今天的預覽版 6 依然如此,Microsoft 將其描述為包含"一小組新功能和效能改進"。

本次更新的主要功能是在 Windows ARM64 上支援 Windows Forms 應用程式。此前.NET 5 Preview 4,Windows ARM64 上只支援控制檯和 ASP.NET Core 應用程式。 通過這項支援,開發者可以在 Surface Pro X 等 Windows ARM64 裝置上構建和執行 Windows Forms 應用。微軟還透露,他們仍在努力為 Windows ARM64 裝置提供 WPF支援。 同時.NET 5移除了對WinRT 的內建支援,通過外部工具鏈進行支援,這麼做的最直接的好處是簡化 .NET 執行時程式碼庫(一下就刪除 6 萬行程式碼),而且這麼多程式碼和跨平臺無關。這次版本更新的內容如下:

  • Windows 窗體改進:開發人員可以強制其應用程式是單例項的,這意味著一次啟動一個例項。
  • RyuJIT 程式碼質量改進:其中大量涉及常規改進(結構處理等)、ARM64 硬體內部功能和 ARM64 生成的程式碼改進,從而大大減少了 ARM64 程式碼大小。
  • 單個檔案應用改進:新增了在單個檔案中包含本機二進位制檔案和任何其他內容(如圖片)的新選項,.NET 5目標是為 Windows、macOS 和 Linux 啟用將應用作為一個檔案釋出。這個里程碑進一步接近了。
  • 本機託管應用程式改進:一位貢獻者提供了一種新的模型,用於在本機應用程式中的 .NET 託管模型。
  • 突破性的改變 -- 刪除內建 WinRT 支援: "已經用 Windows 團隊在 .NET 5.0 中提供的C#/WinRT工具鏈取代了內建 WinRT 支援。WinRT 互操作中的此更改是一個突破性的變化,使用 WinRT 的 .NET Core 3.x 應用將需要重新編譯。我們將在即將到來的預覽版中提供有關此內容的更多資訊。

開發工具支援上需要Visual Studio 16.7 預覽版才支援.NET 5, Visual Studio For Mac 也支援.NET 5, 當然Visual Studio Code 安裝最新版的C#擴充套件外掛也支援.NET 5. Visual Studio .NET遠端偵錯程式對Windows ARM64的支援將在Visual Studio 16.7版本中提供。Visual Studio Code .NET遠端偵錯程式支援將在以後推出。

Richard 在部落格結束時說:"我們現在已經過了這個釋出週期的一半。"事實上,我們開始’關閉釋出'。如果您密切關注我們的程式碼倉庫,您會看到我們正開始更仔細地管理問題的里程碑。 在釋出了多個.NET 5 版本之後,我可以告訴你,這是一個偉大的時間。 是時候在一組我們構建的功能上取得勝利,並把它們打磨到您樂於使用它們。 這就是我們現在在家裡遠端工作所做的。 儘管 11 月首次亮相仍有望實現,但 .NET 5 不會擁有 Microsoft 最初計劃的所有特性和功能。這是因為COVID-19大流行引起的併發症。因此,完整的包將會在 2021 年 11 月與 .NET 6 一起釋出。

dotnet_schedule

您可以使用以下連結下載新的 .NET 5.0 的第六個預覽版,適用於於Windows、macOS和Linux: 

相關文章