.NET 5: Despliegue de aplicaciones web con Azure App Service
Tags: webdev, azure, dotnet, csharp
Published: 2020-11-13 21:14:12

La innovación detrás de .NET consiste en integrar todas las herramientas de desarrollo de Microsoft: librerías, lenguajes, tecnologías y propósitos bajo un mismo framework, que sean de utilidad para el desarrollador o la empresa que lo necesite.

En este sentido, .NET presenta una plataforma unificada en su ecosistema para apoyar la construcción de literalmente cualquier cosa, desde aplicaciones de escritorio hasta videojuegos, o aplicaciones web o móviles, realmente son muchas las cosas que podemos hacer. 

![](https://dev-to-uploads.s3.amazonaws.com/i/f941quin2mkrqz0vopgw.png)

Recientemente, en la .NET Conf 2020, la version 5.0 de .NET ha sido lanzada oficialmente. .NET 5 apuesta a un gran cambio con relación al concepto de desarrollo, ya que todo tipo de aplicaciones, sean de escritorio, consola, web o móviles se realizarán con un único framework multiplataforma y con una gran potencia. Esto permitirá tener una runtime .NET única que puede ser utilizada en cualquier lugar y para cualquier tipo de desarrollo o dispositivo.

Ahora bien, una de las cosas que muchos se preguntan cuándo una nueva versión de .NET es lanzada, es sobre cómo podemos desplegar en la nube aplicaciones con esta nueva version, en este caso aplicaciones con .NET 5. Pues bien, en el caso de Azure, Microsoft ha hecho posible que se puedan desplegar aplicaciones desarrolladas con .NET 5 desde el día cero gracias a su nueva característica [Early Access Runtime](https://github.com/Azure/app-service-linux-docs/blob/master/Runtime_Support/early_access.md), que habilitará no solo las aplicaciones de .NET 5, sino cada versión posterior de .NET a partir de ahora. 

Muy bien, dada esta contextualización sobre la nueva versión de .NET, veamos en pocos pasos un ejemplo sobre como desplegar una aplicación desarrollada sobre .NET 5 en Azure App Service.

##**SDK de .NET 5**

Lo primero que necesitaremos es tener el SDK de .NET 5 instalado.

![](https://dev-to-uploads.s3.amazonaws.com/i/cjhtf0714ih0m8lwn8ir.png)

***Enlace de descarga***: [https://dotnet.microsoft.com/download](https://dotnet.microsoft.com/download).

##**Proyecto con ASP.NET 5**

Con el SDK de .NET 5, ahora debemos dirigirnos al proyecto que queremos desplegar en Azure, para este caso, vamos a crear uno nuevo para ejemplificar.

![](https://dev-to-uploads.s3.amazonaws.com/i/zw7mll91d5hezabcb6bm.png)

En este caso con .NET 5:

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

  <PropertyGroup>
    <TargetFramework>net5.0</TargetFramework>
  </PropertyGroup>

</Project>
```

##**Azure App Service**

Para desplegar nuestro proyecto en un recurso App Service, tenemos dos consideraciones que pueden ser tomadas en cuenta para especificar que el framework y la version de nuestra aplicación corresponde a .NET 5. 

De forma inicial, primera forma de especificar el framework y la versión es al momento de crear el recurso App Service en la opción `Runtime stack` de la sección `Instance Details`:

![](https://dev-to-uploads.s3.amazonaws.com/i/rcrhdqky76dqjz10q7bp.png)

La segunda forma es cuando ya tenemos el recurso creado, en caso de que deseemos cambiar de .NET Core 3.1 a .NET 5 por ejemplo. Para este caso, deberemos dirigirnos al recurso App Service en cuestión a la opción `Configuration` y a la pestaña `General settings`, aquí debemos seleccionar a la pila de .NET con su versión .NET 5.  

![](https://dev-to-uploads.s3.amazonaws.com/i/o9mwshvccz1bcrj6w6c3.png)

Con estas especificaciones, estaremos listos para desplegar nuestra aplicación con .NET 5 en Azure. 

##**Publicación desde Visual Studio 2019**

Para este ejemplo, desplegaremos nuestra aplicación web desde Visual Studio 2019. Para ello, solo deberemos dar clic derecho al proyecto principal y seleccionar en `Publish`.

![](https://dev-to-uploads.s3.amazonaws.com/i/cctezwpcxe1jar75s323.png)

Luego, deberemos especificar nuestro recurso App Service de Azure y finalmente podremos publicar nuestra aplicación. 

![](https://dev-to-uploads.s3.amazonaws.com/i/z96ugrai4yl5t7qbgukl.png)

Al finalizar este proceso, nuestra aplicación ya estará publicada en Azure:

![](https://dev-to-uploads.s3.amazonaws.com/i/5l6mmgnav2tjtalovpw9.png)

##**¿Qué sigue?**

Con estos sencillos pasos, hemos visto como desplegar una aplicación web desarrollada sobre la nueva versión de .NET 5. Seguramente en los próximos días veremos más casos de uso para el desarrollo de aplicaciones multiplataforma multipropósito. Mientras tanto, aquí hay algunos materiales adicionales para expandir nuestros conocimientos sobre .NET:

+ [Despliegue de aplicaciones web DotVVM y .NET Core en Azure](https://dev.to/dotvvm/despliegue-de-aplicaciones-web-dotvvm-y-net-core-en-azure-44ni).
+ [Construyendo un Dashboard con ASP.NET Core y DotVVM](https://dev.to/esdanielgomez/construyendo-un-dashboard-con-asp-net-core-y-dotvvm-geh).
+ [Trabajando con servicios web a través de ASP.NET Core y DotVVM](https://dev.to/dotvvm/trabajando-con-servicios-web-a-traves-de-asp-net-core-y-dotvvm-4c76).

**Muchas gracias por leer.**

Si tienes alguna pregunta o alguna idea que necesites discutir, será un gusto poder colaborar y juntos intercambiar conocimientos entre sí.

¡Nos vemos en [Twitter](https://twitter.com/esDanielGomez)! :)