Co nowego w programie .NET Core 3.1What's new in .NET Core 3.1

W tym artykule opisano nowości w programie .NET Core 3,1.This article describes what is new in .NET Core 3.1. Ta wersja zawiera drobne ulepszenia programu .NET Core 3,0, skupiając się na małych, ale ważnych poprawkach.This release contains minor improvements to .NET Core 3.0, focusing on small, but important, fixes. Najważniejszym elementem na platformie .NET Core 3,1 jest to, że jest to wersja długoterminowa (LTS) .The most important feature about .NET Core 3.1 is that it's a long-term support (LTS) release.

W przypadku korzystania z programu Visual Studio 2019 należy zaktualizować do programu Visual studio 2019 w wersji 16,4 lub nowszej , aby współpracować z projektami .net Core 3,1.If you're using Visual Studio 2019, you must update to Visual Studio 2019 version 16.4 or later to work with .NET Core 3.1 projects. Aby uzyskać informacje na temat Nowości w programie Visual Studio w wersji 16,4, zobacz co nowego w programie Visual studio 2019 w wersji 16,4.For information on what's new in Visual Studio version 16.4, see What's New in Visual Studio 2019 version 16.4.

Visual Studio dla komputerów Mac obsługuje również program .NET Core 3,1 w Visual Studio dla komputerów Mac 8,4.Visual Studio for Mac also supports and includes .NET Core 3.1 in Visual Studio for Mac 8.4.

Aby uzyskać więcej informacji o wersji, zobacz anons programu .NET Core 3,1.For more information about the release, see the .NET Core 3.1 announcement.

Długoterminowa pomoc technicznaLong-term support

.NET Core 3,1 to wersja LTS z pomocą techniczną firmy Microsoft przez kolejne trzy lata..NET Core 3.1 is an LTS release with support from Microsoft for the next three years. Zdecydowanie zalecamy, aby przenieść aplikacje do programu .NET Core 3,1.It's highly recommended that you move your apps to .NET Core 3.1. Bieżący cykl życia innych głównych wydań jest następujący:The current lifecycle of other major releases is as follows:

ReleaseRelease UwagaNote
.NET Core 3.0.NET Core 3.0 Koniec okresu życia w dniu 3 marca 2020.End of life on March 3, 2020.
.NET Core 2.2.NET Core 2.2 Koniec okresu istnienia 23 grudnia 2019.End of life on December 23, 2019.
.NET Core 2.1.NET Core 2.1 Koniec okresu istnienia 21 sierpnia 2021.End of life on August 21, 2021.

Aby uzyskać więcej informacji, zobacz zasady obsługi .NET Core.For more information, see the .NET Core support policy.

macOS appHost i notarizationmacOS appHost and notarization

Tylko macOSmacOS only

Począwszy od zestaw .NET Core SDK 3,1 dla macOS, ustawienie appHost jest domyślnie wyłączone.Starting with the notarized .NET Core SDK 3.1 for macOS, the appHost setting is disabled by default. Aby uzyskać więcej informacji, zobacz MacOS Catalina Notarization i wpływ na pobieranie i projekty platformy .NET Core.For more information, see macOS Catalina Notarization and the impact on .NET Core downloads and projects.

Gdy ustawienie appHost jest włączone, program .NET Core generuje natywny plik konfiguracji Mach-O podczas kompilowania lub publikowania.When the appHost setting is enabled, .NET Core generates a native Mach-O executable when you build or publish. Aplikacja jest uruchamiana w kontekście appHost, gdy jest uruchamiana z kodu źródłowego za pomocą dotnet run polecenia lub bezpośrednio uruchamiając plik wykonywalny "Mach-O".Your app runs in the context of the appHost when it is run from source code with the dotnet run command, or by starting the Mach-O executable directly.

Bez appHost jedynym sposobem uruchomienia aplikacji zależnej od platformy jest dotnet <filename.dll> polecenie.Without the appHost, the only way a user can start a framework-dependent app is with the dotnet <filename.dll> command. AppHost jest zawsze tworzona przy publikowaniu własnej aplikacji.An appHost is always created when you publish your app self-contained.

Można skonfigurować appHost na poziomie projektu lub przełączać appHost dla określonego dotnet polecenia z -p:UseAppHost parametrem:You can either configure the appHost at the project level, or toggle the appHost for a specific dotnet command with the -p:UseAppHost parameter:

  • Plik projektuProject file

    <PropertyGroup>
      <UseAppHost>true</UseAppHost>
    </PropertyGroup>
    
  • Parametr wiersza poleceniaCommand-line parameter

    dotnet run -p:UseAppHost=true
    

Aby uzyskać więcej informacji na temat tego UseAppHost Ustawienia, zobacz Właściwości programu MSBuild dla Microsoft. NET. SDK.For more information about the UseAppHost setting, see MSBuild properties for Microsoft.NET.Sdk.

Windows FormsWindows Forms

Tylko WindowsWindows only

Ostrzeżenie

Istnieją istotne zmiany w Windows Forms.There are breaking changes in Windows Forms.

Starsze formanty zostały uwzględnione w Windows Forms, które były niedostępne w przyborniku projektanta Visual Studio przez jakiś czas.Legacy controls were included in Windows Forms that have been unavailable in the Visual Studio Designer Toolbox for some time. Zostały one zastąpione nowymi kontrolkami z powrotem w .NET Framework 2,0.These were replaced with new controls back in .NET Framework 2.0. Zostały one usunięte z zestawu Desktop SDK dla platformy .NET Core 3,1.These have been removed from the Desktop SDK for .NET Core 3.1.

Usunięto kontrolkęRemoved control Zalecane zastąpienieRecommended replacement Usunięto skojarzone interfejsy APIAssociated APIs removed
DataGridDataGrid DataGridView DataGridCellDataGridCell
DataGridRowDataGridRow
DataGridTableCollectionDataGridTableCollection
DataGridColumnCollectionDataGridColumnCollection
Element DataGridTableStyleDataGridTableStyle
DataGridColumnStyleDataGridColumnStyle
DatasiatkiDataGridLineStyle
DataGridParentRowsLabelDataGridParentRowsLabel
DataGridParentRowsLabelStyleDataGridParentRowsLabelStyle
DataGridBoolColumnDataGridBoolColumn
DataGridTextBoxDataGridTextBox
GridColumnStylesCollectionGridColumnStylesCollection
GridTableStylesCollectionGridTableStylesCollection
HitTestTypeHitTestType
ToolBarToolBar ToolStrip ToolBarAppearanceToolBarAppearance
ToolBarButtonToolBarButton ToolStripButton ToolBarButtonClickEventArgsToolBarButtonClickEventArgs
ToolBarButtonClickEventHandlerToolBarButtonClickEventHandler
ToolBarButtonToolBarButtonStyle
ToolBarTextAlignToolBarTextAlign
ContextMenuContextMenu ContextMenuStrip
Menu ToolStripDropDown
ToolStripDropDownMenu
MenuItemCollectionMenuItemCollection
MainMenuMainMenu MenuStrip
MenuItemMenuItem ToolStripMenuItem

Zalecamy zaktualizowanie aplikacji do programu .NET Core 3,1 i przejście do kontrolek zastępczych.We recommend you update your applications to .NET Core 3.1 and move to the replacement controls. Zastępowanie formantów jest prostym procesem, zasadniczo "Znajdź i Zamień" w typie.Replacing the controls is a straightforward process, essentially "find and replace" on the type.

C++/CLIC++/CLI

Tylko WindowsWindows only

Dodano obsługę tworzenia projektów C++/CLI (nazywanych także "zarządzanymi C++").Support has been added for creating C++/CLI (also known as "managed C++") projects. Pliki binarne wytworzone z tych projektów są zgodne z platformą .NET Core 3,0 i nowszymi wersjami.Binaries produced from these projects are compatible with .NET Core 3.0 and later versions.

Aby dodać obsługę języka C++/CLI w programie Visual Studio 2019 w wersji 16,4, zainstaluj Programowanie aplikacji klasycznych w języku c++.To add support for C++/CLI in Visual Studio 2019 version 16.4, install the Desktop development with C++ workload. To obciążenie dodaje dwa szablony do programu Visual Studio:This workload adds two templates to Visual Studio:

  • Biblioteka klas CLR (.NET Core)CLR Class Library (.NET Core)
  • Pusty projekt CLR (.NET Core)CLR Empty Project (.NET Core)

Następne krokiNext steps