.NET 6 Preview 6 正式釋出: 關注網路開發

張善友發表於2021-07-15

微軟.NET 團隊的專案經理在部落格上釋出了.NET 6 Preview 6,  在候選釋出階段之前的倒數第二個預覽版,也就是8月份還會釋出一個Preview 7,9月份開始進入RC,兩個候選版本將專注於質量修復,直到 11 月的最終版本。 Preview 6 版本本身相對較小,而 Preview 7 功能方面會更多,Preview 6主要集中在網路開發方面,同時Visual Studio 2022 為WPF 應用程式的開發提供了實時預覽。

ASP.NET Core updates in .NET 6 Preview 6 改進的特性列表中包括 WebSocket 壓縮、 預覽 4 中引入的Mini HTTP API 的OpenAPI 支援以及 Blazor 的可訪問性改進,以及 Blazor 和 JavaScript 之間的互操作的高效位元組陣列傳輸。此外,Blazor 元件現在可以宣告強制性引數,而 ASP.NET Core MVC 和Razor頁面中檢視元件的taghelper 現在可以具有以前不允許的可選引數。同時已將ASP.NET Core 客戶端專案模板更新為 到Angular 12 。

EnityFramework Core預覽 6DbContext提供了一種新方法ConfigureConventions()稱之為"約定前模型配置"。 開發人員可以重寫覆蓋這個方法為型別設定全域性設定。

.NET 6  Preview 6釋出的同時,Visual Studio 2022 也釋出了的新預覽版。亮點是 WPF 應用程式的新實時預覽。熱重新載入功能現在在偵錯程式之外(從 CTRL+F5 開始)以及C++應用程式。

上篇文章 .NET 6 亮點之工作負載,它是統一 .NET 的基礎,我們介紹了工作負載,在 Preview 6 進一步完善了工作負載命令,旨在幫助開發人員更輕鬆地發現和管理可選工作負載。

在Preview 5,Microsoft 提供了這些用於處理工作負載的命令:

  • dotnet workload install -- 安裝工作負載。
  • dotnet workload list -- 列出已安裝的工作負載。
  • dotnet workload update -- 更新已安裝的工作負載。

在預覽版 6 中,新增了三個命令:

  • dotnet workload search -- 列出可安裝的工作負載。
  • dotnet workload uninstall -- 如果不再需要,則刪除指定的工作負載,這也是節省空間的好選擇。
  • dotnet workload repair -- 重新安裝所有以前安裝的工作負載。

除了上述與工作負載相關的專案外,Preview 6 中的其他新特性和功能包括:

  • x64 模擬器更新:已經新增了對 macOS 的 Apple Silicon 和 Windows 的 Arm64 的支援,為此需要做兩件事:

    “在並排安裝程式可用之前(稍後在 .NET 6 中),您需要安裝所有 x64 版本或所有 Arm64 版本,如果你想切換,你需要解除安裝/刪除你的 機器上的所有 .NET Arm64版本。”

  • TLS 支援System.DirectoryServices.Protocols 在已為 Windows 啟用後,System.DirectoryServices.Protocols也為 Linux 和 macOS啟用 TLS 支援。.NET 使用者現在可以享受與 LDAP 伺服器的安全通訊。
  • Crossgen2 替換 crossgen: Crossgen2 已為所有現有的 crossgen 場景啟用,微軟也從 SDK 中刪除了(舊的)crossgen,使其不再可訪問且無法使用。“Crossgen(1 和 2)支援將 IL 預編譯為本機程式碼作為釋出步驟。預編譯主要有利於改進啟動。Crossgen2 是一種從頭開始的實現,已被證明是程式碼生成創新的卓越平臺. 例如,crossgen2 可以為比 crossgen1 更廣泛的 IL 模式集生成程式碼。”
  • 改進的同步非同步效能: 同步非同步是一種常見的阻塞工作型別,當它發生線上程池工作執行緒上時會導致飢餓。此外,緩慢的執行緒注入會延遲其他排隊的工作,並可能延遲解決飢餓問題。“當非同步同步是執行緒池工作執行緒上發生的唯一阻塞工作型別時,此更改提高了執行緒注入的速度。有一些新的AppContext配置值可用於配置響應執行緒注入的速度非同步同步。”

相關文章