.NET Core 3.0 Preview 6 has been published , including a set of updated compiler to improve startup performance, as well as by improving links and EventPipe to optimize the size of the application.
In addition, .NET Core on ARM64 team also released a new image for the Docker Alpine.
Download: https://dotnet.microsoft.com/download/dotnet-core/3.0 (supports Windows, macOS and Linux)
WPF and Windows Forms Updates
WPF team has been the most WPF code repository hosting to GitHub . In fact, they have just released the source code 15 components . For developers who are familiar with the WPF, these assembly name should be very familiar.
Alpine Docker Mirror
Docker mirror now available for .NET Core and ASP.NET Core on ARM64, before they apply only to the x64 platform.
The following may be used for the mirror Dockerfile
, as shown using the following docker pull
ways to:
docker pull mcr.microsoft.com/dotnet/core/runtime:3.0-alpine-arm64v8
docker pull mcr.microsoft.com/dotnet/core/aspnet:3.0-alpine-arm64v8
Support for HTTP / 2 in the HttpClient
HTTP / 2 is a major revision of the HTTP protocol. .NET Core 3.0 of HttpClient
the now added support for HTTP / 2 request. Although the default value is still HTTP / 1.1, but we can set the version of the HTTP request message on the selected use of HTTP / 2.
var client = new HttpClient() { BaseAddress = new Uri("https://localhost:5001") };
// HTTP/1.1 request
using (var response = await client.GetAsync("/"))
{
Console.WriteLine(response.Content);
}
// HTTP/2 request
using (var request = new HttpRequestMessage(HttpMethod.Get, "/") { Version = new Version(2, 0) })
using (var response = await client.SendAsync(request))
{
Console.WriteLine(response.Content);
}
Or may be provided by the DefaultRequestVersion
property in order to HttpClient
transmit the default HTTP / 2 request.
var client = new HttpClient()
{
BaseAddress = new Uri("https://localhost:5001"),
DefaultRequestVersion = new Version(2, 0)
};
// Defaults to HTTP/2
using (var response = await client.GetAsync("/"))
{
Console.WriteLine(response.Content);
}
Other update also includes improvements to the events of the pipeline, the use of ReadyToRun mirror optimized for .NET Core applications and cross-platform / cross-compiler architecture improvements. For details, please see the announcement .