Migrar do ASP.NET Core 3.0 para 3.1
Por Scott Addie
Esse artigo explica como atualizar um projeto existente do ASP.NET Core 3.0 para o ASP.NET Core 3.1.
Pré-requisitos
- Visual Studio 2019 16.4 ou posterior com a carga de trabalho de desenvolvimento da Web e do ASP.NET
- SDK do .NET Core 3.1
Atualizar a versão do SDK do .NET Core no global.json
Se você depender de um arquivo global.json para direcionar uma versão específica do SDK do .NET Core, atualize a propriedade version
para a versão do SDK do .NET 3.1 instalada. Por exemplo:
{
"sdk": {
- "version": "3.0.101"
+ "version": "3.1.101"
}
}
Atualizar a estrutura de destino
Atualize o Moniker da Estrutura de Destino (TFM) do arquivo de projeto para netcoreapp3.1
:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
</Project>
Referências do pacote de atualização
No arquivo de projeto, atualize cada atributo Microsoft.AspNetCore.*
de referência do pacote Version
para 3.1.0 ou posterior. Por exemplo:
<ItemGroup>
- <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.0.0" />
- <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="3.0.0" Condition="'$(Configuration)' == 'Debug'" />
+ <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.1" />
+ <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="3.1.1" Condition="'$(Configuration)' == 'Debug'" />
</ItemGroup>
Atualizar imagens do Docker
Para aplicativos que usam o Docker, use uma imagem base que inclua ASP.NET Core 3.1. Por exemplo:
docker pull mcr.microsoft.com/dotnet/aspnet:3.1
React para cookie alterações do SameSite
As implementações do atributo SameSite
para cookies do HTTP foram alteradas entre o ASP.NET Core 3.0 e o 3.1. Para que as ações sejam executadas, consulte os seguintes recursos:
- Trabalhar com cookies SameSite no ASP.NET Core
- aspnet/Announcements#390
- Alterações futuras do SameSite cookie em ASP.NET e ASP.NET Core
Publicar com o Visual Studio
No arquivo .pubxml
, atualize para TargetFramework
3.1:
- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>
Analisar as alterações interruptivas
Examine as alterações interruptivas de 3.0 para 3.1 no .NET Core, ASP.NET Core e no Entity Framework Core em Alterações interruptivas na migração da versão 3.0 para a 3.1.
Alterações opcionais
As alterações a seguir são opcionais.
Usar o Auxiliar de Marca de Componente
O ASP.NET Core 3.1 apresenta um Component
Auxiliar de Marca. O Auxiliar de Marca pode substituir o Método auxiliar de HTML RenderComponentAsync<TComponent>
em um projeto Blazor. Por exemplo:
- @(await Html.RenderComponentAsync<Counter>(RenderMode.ServerPrerendered, new { IncrementAmount = 10 }))
+ <component type="typeof(Counter)" render-mode="ServerPrerendered" param-IncrementAmount="10" />
Para obter mais informações, consulte Integrar ASP.NET componentes principais Razor ao MVC ou Razor ao Pages.
Módulo do ASP.NET Core (ANCM)
Se o Módulo do ASP.NET Core (ANCM) não foi um componente selecionado quando o Visual Studio foi instalado ou se uma versão anterior do ANCM foi instalada no sistema, baixe o Instalador de Pacote de Hospedagem do .NET Core (download direto) mais recente e execute o instalador. Para obter mais informações, confira Hospedagem de Pacote.