Publicar una aplicación de ASP.NET Core en Azure con Visual Studio

Importante

Versiones preliminares de ASP.NET Core con Azure App Service

Las versiones preliminares de ASP.NET Core no se implementan de forma predeterminada en Azure App Service. Para hospedar una aplicación que usa una versión preliminar de ASP.NET Core, vea Implementar una versión preliminar de ASP.NET Core en Azure App Service.

Para solucionar un problema con la implementación de App Service, vea Solución de problemas de ASP.NET Core en Azure App Service e IIS.

Configurar

Abra una cuenta gratuita de Azure si no tiene una.

Creación de una aplicación web

Inicie Visual Studio 2022 y seleccione Crear un proyecto.

Create a new project from the start window

En el cuadro de diálogo Crear un proyecto nuevo, seleccione Aplicación web ASP.NET Core y, a continuación, seleccione Siguiente.

Create an ASP.NET Core Web App

En el cuadro de diálogo Configurar el nuevo proyecto, asigne al proyecto un nombre y, a continuación, seleccione Siguiente.

En el cuadro de diálogo Información adicional:

  • En la entrada Marco, seleccione .NET 7.0 (Soporte de duración estándar).
  • En la entrada Tipo de autenticación, seleccione Cuentas individualesy, a continuación, seleccione Crear.

Additional information

Visual Studio crea la solución.

Ejecutar la aplicación

  • Presione F5 para ejecutar el proyecto.

Web application open in Microsoft Edge on localhost

Registrar un usuario

  • Seleccione Registrar y registre a un usuario nuevo. Puede usar una dirección de correo electrónico ficticia. Al enviar la información, la página mostrará el error siguiente:

    "Error en una operación de base de datos al procesar la solicitud. Aplicar migraciones existentes puede resolver este problema"

  • Seleccione Aplicar migraciones y, una vez actualizada la página, vuelva a cargarla.

A database operation failed while processing the request

  • Se muestra una página de Confirmación del registro. Seleccione Haga clic aquí para confirmar su cuenta.
  • Se muestra una página Confirmar correo electrónico.
  • Inicie sesión como nuevo usuario.

La aplicación muestra el correo electrónico usado para registrar el nuevo usuario y un vínculo Cerrar sesión.

Web application open in Microsoft Edge. The Register link is replaced by the text Hello user@example.com!

  • Detenga la aplicación cerrando el explorador o, en Visual Studio, seleccione Depurar>Detener depuración.
  • En Visual Studio, seleccione Compilar>Limpiar solución para limpiar los elementos del proyecto y evitar la contención de archivos.

Implementación de la aplicación en Azure

Desde el Explorador de soluciones, haga clic con el botón derecho en el proyecto y seleccione Publicar.

Contextual menu open with Publish link highlighted

En el cuadro de diálogo Publicar:

  • Seleccione Azure.
  • Seleccione Siguiente.

Publish dialog

En el cuadro de diálogo Publicar:

  • Seleccione Azure App Service (Windows).
  • Seleccione Siguiente.

Publish Dialog: select Azure Service

En el cuadro de diálogo Publicar, en la pestaña App Service, seleccione Crear nueva.

Publish dialog: select Azure Service instance

Aparece el cuadro de diálogo Crear servicio de aplicaciones:

  • Se rellenan los campos de entrada Nombre, Grupo de recursos y Plan de hospedaje. Puede mantener estos nombres o cambiarlos.
  • Seleccione Crear.

Create App Service dialog

Una vez terminada la creación, el cuadro de diálogo se cierra automáticamente y el cuadro de diálogo Publicar vuelve a recibir el foco:

  • La nueva instancia que se acaba de crear se selecciona automáticamente.
  • Seleccione Finalizar.

Publish dialog: select App Service instance

El cuadro de diálogo Progreso de creación del perfil de publicación confirma que se creó el perfil de publicación. Seleccione Cerrar.

A continuación, verá la página de resumen del perfil de publicación. Visual Studio ha detectado que esta aplicación requiere una base de datos de SQL Server que aparece en el panel Dependencias del servicio. Seleccione los puntos suspensivos (...) y después Conectar.

Publish Profile summary page: configure SQL Server dependency

Aparece el cuadro de diálogo Conectarse a la dependencia:

  • Seleccione Azure SQL Database.
  • Seleccione Siguiente.

Configure SQL Server Dependency dialog

En el cuadro de diálogo Conectarse a la base de datos de Azure SQL, seleccione Crear nueva.

Select Create a SQL DB

Aparece el cuadro de diálogo Crear una base de datos de Azure SQL:

  • Se rellenan los campos de entrada de datos Nombre de la base de datos, Grupo de recursos, Servidor de base de datos y Plan de App Service. Puede mantener estos nombres o cambiarlos.
  • Especifique los valores de Database administrator username (Nombre de usuario del administrador de la base de datos) y Database administrator password (Contraseña del administrador de la base de datos) del servidor de bases de datos seleccionado (tenga en cuenta que la cuenta que use debe tener los permisos necesarios para crear la base de datos de Azure SQL).
  • Seleccione Crear.

New Azure SQL Database dialog

Una vez finalizada la creación, el cuadro de diálogo se cierra automáticamente y el cuadro de diálogo Conectarse a Azure SQL Database, vuelve a recibir el foco:

  • La nueva instancia que se acaba de crear se selecciona automáticamente.
  • Seleccione Siguiente.

Select Next

En el paso siguiente del cuadro de diálogo Conectarse a Azure SQL Database:

  • Rellene los campos Database connection user name (Nombre de usuario de conexión de la base de datos) y Database connection password (Contraseña de conexión de la base de datos). Estos son los detalles que utilizará la aplicación para conectarse a la base de datos en tiempo de ejecución. El procedimiento recomendado es evitar el uso de los mismos detalles que el nombre de usuario y la contraseña de administrador usados en el paso anterior.
  • Seleccione Finalizar.

Configure Azure SQL Database dialog, connection string details

El cuadro de diálogo Progreso de la configuración de dependencia confirma que la base de datos de Azure SQL está configurada. Seleccione Cerrar.

En la página Resumen del perfil de publicación, seleccione Mas acciones>Editar:

Publish profile summary page: edit settings

En la pestaña Configuración del cuadro de diálogo Publicar, haga lo siguiente:

  • Expanda Bases de datos y active Usar esta cadena de conexión en tiempo de ejecución.

  • Expanda Migraciones de Entity Framework y seleccione Aplicar esta migración al publicar.

  • Seleccione Guardar. Visual Studio volverá al cuadro de diálogo Publicar.

Publish dialog: Settings panel:Save

Haga clic en Publicar. Visual Studio publica la aplicación en Azure. Una vez completada la implementación.

Last step

La aplicación se abre en un explorador. Registre un nuevo usuario e inicie sesión como nuevo usuario para validar la implementación de la base de datos y la conexión en tiempo de ejecución.

Actualización de la aplicación

  • Edite la página Pages/Index.cshtmlRazor y cambie su contenido y guarde los cambios. Por ejemplo, puede editar el párrafo para que incluya el mensaje "¡Hola, ASP.NET Core!":

    @page
    @model IndexModel
    @{
        ViewData["Title"] = "Home page";
    }
    
    <div class="text-center">
        <h1 class="display-4">Welcome</h1>
        <p>Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core</a>.</p>
        <p>Hello ASP.NET Core!</p>
    </div>
    
  • Seleccione Publicar de nuevo en la página de resumen del perfil de publicación.

Publish profile summary page

  • Una vez publicada la aplicación, actualice la página y compruebe que los cambios realizados están disponibles en Azure.

Verify task is complete

Limpieza

Cuando haya terminado de probar la aplicación, vaya a Azure Portal y elimínela.

  • Seleccione Grupos de recursos y, luego, el grupo de recursos que haya creado.

Azure Portal: Resource Groups in sidebar menu

  • En la página Grupo de recursos, seleccione Eliminar grupo de recursos.

Azure Portal: Resource Groups page

  • Escriba el nombre del grupo de recursos y seleccione Eliminar. La aplicación y todos los demás recursos que ha creado en este tutorial se han eliminado de Azure.

Recursos adicionales