.NET Core 3.0 Preview 6 發布新增用於ARM64 的Alpine Docker 鏡像
.NET Core 3.0 Preview 6 已發布,其中包括用於編譯程序集的更新,以改進啟動性能,以及通過對鏈接器和EventPipe的改進來優化應用程序的大小。此外,.NET Core團隊還為Alpine on ARM64發布了新的Docker鏡像。
下載地址:
https://dotnet.microsoft.com/download/dotnet-core/3.0(支持Windows , macOS和Linux)
WPF 和Windows Forms 更新
WPF團隊現已將大部分的WPF代碼庫託管至GitHub。實際上,他們剛剛發布了15個組件的源代碼。對於熟悉WPF的開發者來說,這些程序集名稱應該非常熟悉。
Alpine Docker 鏡像
Docker 鏡像現在可用於ARM64 上的.NET Core 和ASP.NET Core,它們之前只適用於x64 平台。
以下的鏡像可用於Dockerfile
,如下所示使用docker pull
的方式即可:
docker pull mcr.microsoft.com/dotnet/core/runtime:3.0-alpine-arm64v8
docker pull mcr.microsoft.com/dotnet/core/aspnet:3.0-alpine-arm64v8
在 HttpClient 中提供對HTTP/2 的支持
HTTP/2是HTTP協議的主要修訂版。.NET Core 3.0的HttpClient
中現已添加對HTTP/2請求的支持。雖然默認值仍為HTTP/1.1,但我們可以通過在HTTP請求消息上設置版本來選擇使用HTTP/2。
var client = new HttpClient() { BaseAddress = new Uri("https://localhost:5001") };// HTTP/1.1 requestusing (var response = await client.GetAsync("/")){ Console.WriteLine( response.Content);}// HTTP/2 requestusing (var request = new HttpRequestMessage(HttpMethod.Get, "/") { Version = new Version(2, 0) })using (var response = await client.SendAsync(request )){ Console.WriteLine(response.Content);}
或者可以通過設置DefaultRequestVersion
屬性以在HttpClient
中默認發送HTTP/2請求。
var client = new HttpClient(){ BaseAddress = new Uri("https://localhost:5001"), DefaultRequestVersion = new Version(2, 0)};// Defaults to HTTP/2using (var response = await client.GetAsync ("/")){ Console.WriteLine(response.Content);}
其他更新還包括對事件管道的改進、使用ReadyToRun鏡像優化.NET Core應用程序以及針對跨平台/跨架構編譯的改進。詳情請查看發佈公告。