Saltar a contenido

Migración Netcore 3.1 a Net 6

Para conocer que debemos migrar en caso de NO utilizar el template de clean arquitectura de platform puede acceder a Migrate from ASP.NET Core 3.1 to 6.0

Para aquellos que esten utilizando el template, los pasos que debemos tomar son los siguientes:

Actualización SDK

Debemos actualizar el TargetFramework de nuestros .csproj a la versión net6.0

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

y

  <PropertyGroup>
-    <TargetFramework>netstandard2.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
    ...
Modificar los proyectos: Api | Application | Infraestructure | Domain.

Actualización de librerias ARQ.

Se debe actualizar las librerias

  1. Andreani.ARQ.Core >= 6.0.0
  2. Andreani.ARQ.CQRS >= 6.0.0
  3. Andreani.ARQ.WebHost >= 6.0.0

Es posible que deba actualizar las dependencias de su proyecto a la ultima versión estable. En cada proyecto se deben realizar las pruebas necesarias para conocer que dependencias particulares se debe actualizar.

Actualizar el dockerfile

Se debe reemplazar el dockerfile por

FROM ghcr.io/architecture-it/net:6.0-sdk as build
WORKDIR /app
COPY . .
RUN dotnet restore
WORKDIR "/app/src/{appname}"
RUN dotnet build "{appname}.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "{appname}.csproj" -c Release -o /app/publish

FROM ghcr.io/architecture-it/net:6.0
COPY --from=publish /app/publish .

ENTRYPOINT ["dotnet", "{appname}.dll"]
Reemplazando el {appname} por el respectivo del proyecto

Cambios en el template

Fuera de la actualización del sdk, se modificó la forma de trabajar en el template, para ver los cambios puede dirigirse a Template git, tambien puede ver el pull request con los cambios aplicados para esta nueva versión