Migración de ASP.NET Core 3.0 a 3.1

Por Scott Addie

En este artículo se explica cómo actualizar un proyecto ASP.NET Core 3.0 existente a ASP.NET Core 3.1.

Requisitos previos

Actualización de la versión del SDK de .NET Core en global.json

Si confía en un archivo global.js para tener como destino una versión específica de SDK de .NET Core, actualice la propiedad a la versión version del SDK 3.1 instalada. Por ejemplo:

{
  "sdk": {
-    "version": "3.0.101"
+    "version": "3.1.101"
  }
}

Actualización de la plataforma de destino

En el archivo de proyecto, actualice el Moniker de la plataforma de destino (TFM) a netcoreapp3.1 :

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
-    <TargetFramework>netcoreapp3.0</TargetFramework>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>

</Project>

Actualización de las referencias del paquete

En el archivo de proyecto, actualice el atributo de cada referencia Microsoft.AspNetCore.* de paquete Version a 3.1.0 o posterior. Por ejemplo:

<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>

Actualización de imágenes de Docker

Para las aplicaciones que usan Docker, use una imagen base que incluya ASP.NET Core 3.1. Por ejemplo:

docker pull mcr.microsoft.com/dotnet/core/aspnet:3.1

Las SameSite implementaciones de atributo de HTTP cookie cambiaron entre ASP.NET Core 3.0 y 3.1. Para ver las acciones que se deben realizar, consulte los siguientes recursos:

Publicación con Visual Studio

En el .pubxml archivo, actualice TargetFramework a 3.1:

- <TargetFramework>netcoreapp3.0</TargetFramework>
+ <TargetFramework>netcoreapp3.1</TargetFramework>

Revisión de cambios importantes

Revise los cambios importantes de la versión 3.0 a la 3.1 en .NET Core, ASP.NET Core y Entity Framework Core en Cambios importantes para la migración de la versión 3.0 a la 3.1.

Cambios opcionales

Los siguientes cambios son opcionales.

Usar el asistente de etiquetas de componente

ASP.NET Core 3.1 presenta un asistente Component de etiquetas. El asistente de etiquetas puede reemplazar el RenderComponentAsync<TComponent> método del asistente html en un Blazor proyecto. Por ejemplo:

- @(await Html.RenderComponentAsync<Counter>(RenderMode.ServerPrerendered, new { IncrementAmount = 10 }))
+ <component type="typeof(Counter)" render-mode="ServerPrerendered" param-IncrementAmount="10" />

Para obtener más información, vea Integración y representación previa de componentes Razor de ASP.NET Core.