[Translation] .NET Core3.1 release

.NET Core3.1 release

We are pleased to announce the release of .NET Core 3.1. In fact, this is only a small part of our more than two months before the release of .NET Core 3.0 of repair and improvement. The most important thing is .NET Core 3.1 is a long-term support (LTS) version, and will be supported for three years. As in the past, we want to spend some time to release the next LTS version. An additional two months (after .NET Core 3.0) allows us to select and implement the right improvements have been made in a very stable basis.

You can download the Windows, macOS and Linux .NET Core 3.1:

  • .NET Core 3.1 SDK and runtime
  • Docker container image
  • Snap Setup
  • ASP.NET Core and EF Core also released today.

Visual Studio 2019 16.4 also released today, including .NET Core 3.1. This will .NET Core 3.1 is required for use with Visual Studio update. For Visual Studio 2019 users, we recommend only the Visual Studio update to 16.4, rather than a separate download .NET Core 3.1.

Visual Studio for Mac also supports Visual Studio for Mac 8.4 Preview channel and includes .NET Core 3.1. You need to select the Preview channel to use .NET Core 3.1.

Release Notes:

  • .NET Core 3.1 Release Notes
  • .NET Core 3.1 Problem GitHub issue
  • GitHub released

Change the 3.1 .NET Core mainly in Blazor and Windows Desktop, this is .NET Core 3.0 are two new features. This includes support for C ++ / CLI, which is required for a conventional Windows-developers.

Before we understand .NET Core new features in 3.1, let's take a quick look at .NET Core 3.0 key improvements, this is the most important part of .NET Core 3.1 to consider.

.NET Core 3.0 Update Overview

.NET Core 3.0 provides the following key improvements. We've heard from developers in large sites where it worked so well for them.

  • .NET Core 3.0 has hosted several months in dot.net and Bing.com, it has passed the test. Many other Microsoft team quickly deploy large-scale workloads on the production of .NET Core 3.1.
  • Performance is greatly improved across many components, and will be described in detail in .NET Core 3.0 intrinsics and hardware performance improvements in .NET Core.
  • C # 8 asynchronous stream is added, the range / index, and a reference type more modes may be empty. Nullable NullReferenceException allows you to directly target the code defects. The bottom frame library has been annotated so that you know when you can expect null.
  • F # 4.7 is committed by an implicit yield expression syntax and some of the relaxation of certain things easier. It also includes support for LangVersion and nameof comes and opens a static class in the preview. F # core library now also for .NET Standard 2.0. You can read more in publishing F # 4.7.
  • .NET Standard 2.1 increases the types of sets that may be used in .NET Core codes and can be used in Xamarin. .NET Standard 2.1 include .NET Core 2.1 after type.
  • .NET Core now supports Windows Forms and WPF (and open source) for Windows desktop applications. WPF Designer is part of Visual Studio 2019. WindowsForms design is in preview mode, you can download.
    Now, .NET Core applications with executable files by default. In past releases, the need to start the application by dotnet command, such as dotnet myapp.dll. You can now use the application-specific executable file (e.g., or myapp) start the application ./myapp, depending on the operating system.
  • Add high performance JSON API, a reader / writer, and the object model serialization scheme. These API build from scratch, Span Instead of using UTF8 UTF16 (e.g. string) in the background. These API minimize distribution, resulting in improved performance, reduced working garbage collector. Refer to try new System.Text.Json API.
  • By default, the garbage collector uses less memory, usually much less. In the case of many applications hosted on the same server, this improvement is very useful. A garbage collector also updated to use a lot better than the nuclear core 64 of the machine. See better allocation of CPU configured GC on a computer having a CPU 64 or more.
  • .NET Core for Docker has been enhanced to enable .NET applications predictability in the container and effectively. When the container has been configured to limited memory or CPU, and the garbage collector thread pool has been updated to work better. .NET Core Docker window image is small, especially the SDK image. See: GC using a server running a 0 th partial scene in small containers, operating in a small container using GC server scenario first hard restricting portion -GC stack and use .NET and Docker-DockerCon 2019 update.
  • And now supports the Raspberry Pi ARM chip to support the development of IoT, including the use of Remote Visual Studio debugger. You can use the new GPIO API to deploy the application can monitor sensors, and print messages or images on the display. ASP.NET data may be used or disclosed for the API allows the configuration of the device IoT site.

    Supported Platforms

    The following operating systems support .NET Core 3.1:

  • Alpine: 3.9+
  • Debian: 9+
  • openSUSE: 42.3+
  • Fedora: 26+
  • Ubuntu: 16.04+
  • RHEL: 6+
  • SLES: 12+
  • macOS: 10.13+
  • Windows Client: 7, 8.1, 10 (1607+)
  • Windows Server: 2012 R2 SP1 +
    Note: Windows Forms and WPF applications, and works only supported on Windows.

Chip supports the following:

  • x64 on Windows, macOS and Linux
  • x86 on Windows
  • ARM32 on Windows and Linux
  • ARM64 (kernel 4.14+) on Linux

Note: Make sure that .NET Core 3.1 ARM64 deploy the Linux kernel version 4.14 or later. For example, Ubuntu 18.04 to meet this requirement, but 16.04 is not satisfied.

Windows Forms controls to delete
the following Windows Forms controls from .NET Core 3.1 is deleted:

  • Data Grid
  • toolbar
  • Context menu
  • menu
  • main menu
  • Menu Item

As early as 2005, these controls will be replaced by the .NET Framework 2.0 is more powerful controls. By default, over the years, Visual Studio Designer Toolbox do not provide these controls. As a result, we decided to remove these controls, and only concerned with new controls.

We recommend the following alternatives:

Old controls (API) The proposed replacement Other API associated with the deleted
DataGrid DataGridView DataGridCell,DataGridRow,DataGridTableCollection,DataGridColumnCollection,DataGridTableStyle,DataGridColumnStyle,DataGridLineStyle,DataGridParentRowsLabel,DataGridParentRowsLabelStyle,DataGridBoolColumn,DataGridTextBox,GridColumnStylesCollection,GridTableStylesCollection,HitTestType
ToolBar ToolStrip ToolBarAppearance
ToolBarButton ToolStripButton ToolBarButtonClickEventArgs,ToolBarButtonClickEventHandler,ToolBarButtonStyle,ToolBarTextAlign
ContextMenu ContextMenuStrip
Menu ToolStripDropDown,ToolstripDropDownMenu MenuItemCollection
MainMenu MenuStrip
MenuItem ToolstripMenuItem

Yes, this is a major change, unfortunately. If you are using us to remove the controls in the application, you will see the construction of interruption. In addition, if you open .NET Core 3.0 applications in the latest version of .NET Core Windows Forms Designer, when you use these controls will see an error.

We recommend that you update the application to .NET Core 3.1, and then move to other controls. Replace the control is a simple process, essentially "find and replace."

First of all, we should make these changes before release 3.0 .NET Core, and we agree. We try to avoid outdated change, or even avoid a breakthrough change, which makes us very painful.

As we get further into the Windows Forms Designer project, we realized that these controls do not match to create modern applications, and should never be part of .NET Core port of Windows Forms. We also see that they need more time to support us and not reasonable.

Our goal is to continue to improve Windows Forms, to achieve higher DPI, accessibility and reliability, and we need to make late changes to focus on delivery.

C ++ / CLI

16.4 in 2019 we added support for creating C ++ / CLI can be used with the .NET Core 3.0+ (also known as "managed C ++") components in Visual Studio. You need to install the "desktop development with C ++" work load and "C ++ / CLI support" component, you can use C ++ / CLI.

This component adds several templates you can use:

  • CLR Class Library (.NET Core)
  • CLR Empty Project (.NET Core)
    If you can not find them, just search for them in the "New Project" dialog box.

C ++ / CLI is enabled only on Windows. You can not be used with .NET Framework target of C ++ / CLI assemblies and .NET Core, and vice versa.

End

We recommend that you migrate to .NET Core 3.1 as soon as possible. This is a great version (largely due to 3.0), many aspects of its .NET Core has been improved. It is also a long-term support (LTS) version will be supported for three years.

Life Cycle Update:

  • .NET Core 3.0 will be held today (March to 3 May 2020) maintenance for three months.
  • .NET Core 2.2 throughout the maintenance period will end on December 23.
  • .NET Core 2.1 support will continue until August 2021 (which is the LTS version).

Source: https://devblogs.microsoft.com/dotnet/announcing-net-core-3-1/

Guess you like

Origin www.cnblogs.com/yyfh/p/11980790.html