O que há de novo no .NET Core 3.1

Este artigo descreve o que há de novo no .NET Core 3.1. Esta versão contém pequenas melhorias para o .NET Core 3.0, com foco em correções pequenas, mas importantes. O recurso mais importante sobre o .NET Core 3.1 é que ele é uma versão LTS (suporte de longo prazo).

Se você estiver usando o Visual Studio 2019, deverá atualizar para o Visual Studio 2019 versão 16.4 ou posterior para trabalhar com projetos do .NET Core 3.1. Para obter informações sobre o que há de novo no Visual Studio versão 16.4, consulte O que há de novo no Visual Studio 2019 versão 16.4.

O Visual Studio para Mac também suporta e inclui o .NET Core 3.1 no Visual Studio para Mac 8.4.

Para obter mais informações sobre a versão, consulte o anúncio do .NET Core 3.1.

Suporte de longo prazo

O .NET Core 3.1 é uma versão LTS com suporte da Microsoft por três anos após seu lançamento. É altamente recomendável que você mova seus aplicativos para a versão LTS mais recente. Consulte a página de política de suporte do .NET e do .NET Core para obter uma lista das versões suportadas.

Versão Data de fim de vida
.NET Core 3.1 Fim da vida útil em 13 de dezembro de 2022.
.NET Core 3.0 Fim da vida útil em 3 de março de 2020.
.NET Core 2.2 Fim da vida útil em 23 de dezembro de 2019.
.NET Core 2.1 Fim da vida útil em 21 de agosto de 2021.

Para obter mais informações, consulte a política de suporte do .NET e do .NET Core.

macOS appHost e reconhecimento de firma

Apenas macOS

A partir do .NET Core SDK 3.1 para macOS, a configuração appHost é desabilitada por padrão. Para obter mais informações, consulte macOS Catalina Notarization e o impacto nos downloads e projetos do .NET Core.

Quando a configuração appHost está habilitada, o .NET Core gera um executável Mach-O nativo quando você cria ou publica. Seu aplicativo é executado no contexto do appHost quando é executado a partir do código-fonte com o dotnet run comando ou iniciando o executável Mach-O diretamente.

Sem o appHost, a única maneira de um usuário iniciar um aplicativo dependente da estrutura é com o dotnet <filename.dll> comando. Um appHost é sempre criado quando você publica seu aplicativo independente.

Você pode configurar o appHost no nível do projeto ou alternar o appHost para um comando específico dotnet com o -p:UseAppHost parâmetro:

  • Ficheiro de projeto

    <PropertyGroup>
      <UseAppHost>true</UseAppHost>
    </PropertyGroup>
    
  • Parâmetro de linha de comando

    dotnet run -p:UseAppHost=true
    

Para obter mais informações sobre a UseAppHost configuração, consulte Propriedades do MSBuild para Microsoft.NET.Sdk.

Windows Forms

Apenas Windows

Aviso

Há alterações significativas no Windows Forms.

Controles herdados foram incluídos no Windows Forms que não estão disponíveis na caixa de ferramentas do Visual Studio Designer há algum tempo. Eles foram substituídos por novos controles no .NET Framework 2.0. Eles foram removidos do Desktop SDK para .NET Core 3.1.

Controle removido Substituição recomendada APIs associadas removidas
DataGrid DataGridView DataGridCell
DataGridRow
DataGridTableCollection
DataGridColumnCollection
DataGridTableStyle
DataGridColumnStyle
DataGridLineStyle
DataGridParentRowsLabel
DataGridParentRowsLabelStyle
DataGridBoolColumn
DataGridTextBox
GridColumnStylesCollection
GridTableStylesCollection
HitTestType
Barra de ferramentas ToolStrip ToolBarAppearance
ToolBarButton ToolStripButton ToolBarButtonClickEventArgs
ToolBarButtonClickEventHandler
ToolBarButtonStyle
ToolBarTextAlign
ContextMenu ContextMenuStrip
Menu ToolStripDropDown
ToolStripDropDownMenu
MenuItemCollection
Menu principal MenuStrip
MenuItem ToolStripMenuItem

Recomendamos que você atualize seus aplicativos para o .NET Core 3.1 e mude para os controles de substituição. Substituir os controles é um processo simples, essencialmente "encontrar e substituir" no tipo.

C++/CLI

Apenas Windows

Foi adicionado suporte para a criação de projetos C++/CLI (também conhecidos como "C++ gerenciado"). Os binários produzidos a partir desses projetos são compatíveis com o .NET Core 3.0 e versões posteriores.

Para adicionar suporte para C++/CLI no Visual Studio 2019 versão 16.4, instale o desenvolvimento Desktop com carga de trabalho C++. Essa carga de trabalho adiciona dois modelos ao Visual Studio:

  • Biblioteca de classes CLR (.NET Core)
  • Projeto CLR vazio (.NET Core)

Próximos passos