viernes, 30 de octubre de 2026

Capítulo 016. Creación de un Web API con ASP.NET Core utilizando Visual Studio Code

Introducción

En este capítulo aprenderemos a crear un proyecto ASP.NET Core Web API utilizando Visual Studio Code y la interfaz de línea de comandos de .NET (.NET CLI).

Este capítulo es opcional para quienes prefieran trabajar con Visual Studio. Sin embargo, Visual Studio Code ofrece una alternativa ligera, multiplataforma y ampliamente utilizada para el desarrollo con ASP.NET Core.


¿Qué es .NET CLI?

.NET CLI (Command Line Interface) es un conjunto de herramientas que permite crear, compilar, ejecutar y administrar proyectos .NET desde una terminal.

Entre las tareas más comunes que podemos realizar se encuentran:

  • Crear proyectos.

  • Restaurar dependencias.

  • Compilar aplicaciones.

  • Ejecutar aplicaciones.

  • Instalar paquetes NuGet.

  • Publicar proyectos.

A lo largo del curso utilizaremos frecuentemente esta herramienta.


Abrir una terminal

Para comenzar, necesitamos una terminal.

En Windows

Presiona:

Windows + R


Escribe:

cmd


y presiona Enter.


Crear el proyecto Web API

Ubícate en la carpeta donde deseas crear el proyecto y ejecuta el siguiente comando:

dotnet new webapi -n PeliculasAPI --use-controllers


Explicación del comando

  • dotnet new webapi: crea un nuevo proyecto Web API.

  • -n PeliculasAPI: define el nombre del proyecto.

  • --use-controllers: indica que utilizaremos controladores en lugar de Minimal APIs.

Al finalizar, .NET CLI creará la estructura inicial del proyecto.


Abrir el proyecto en Visual Studio Code

Accede a la carpeta recién creada:

cd PeliculasAPI


Luego abre el proyecto utilizando Visual Studio Code:

code .


La instrucción . indica que se abrirá la carpeta actual.


Ejecutar la aplicación

Abre una terminal integrada en Visual Studio Code desde:

Terminal → New Terminal


o utilizando el atajo:

Ctrl + `


Luego ejecuta:

dotnet run


Después de unos segundos aparecerá una salida similar a:

Now listening on: https://localhost:xxxx


donde xxxx representa el puerto asignado por ASP.NET Core.


Probar el endpoint predeterminado

ASP.NET Core genera automáticamente un controlador de ejemplo llamado:

WeatherForecast


Abre la URL mostrada por la aplicación y agrega:

/weatherforecast


Por ejemplo:

https://localhost:7001/weatherforecast


Deberías obtener una respuesta en formato JSON similar a:

[

  {

    "date": "2026-08-11",

    "temperatureC": 25,

    "summary": "Warm"

  }

]


Esto confirma que la API está funcionando correctamente.


Instalar Swagger

Aunque es posible probar los endpoints directamente desde el navegador o mediante herramientas como Postman, utilizaremos Swagger porque proporciona una interfaz visual muy cómoda para explorar y ejecutar peticiones contra la API.

Instalar el paquete NuGet

Desde la terminal ejecuta:

dotnet add package Swashbuckle.AspNetCore


Este comando descargará e instalará la biblioteca Swagger para ASP.NET Core.


Configurar Swagger en Program.cs

Abre el archivo:

Program.cs


Localiza la configuración de OpenAPI generada por defecto y reemplázala por la configuración de Swagger.

Registrar los servicios

Agrega:

builder.Services.AddEndpointsApiExplorer();

builder.Services.AddSwaggerGen();


Habilitar Swagger

Dentro de la configuración de la aplicación agrega:

app.UseSwagger();

app.UseSwaggerUI();


Un ejemplo completo de Program.cs sería:

var builder = WebApplication.CreateBuilder(args);


builder.Services.AddControllers();


builder.Services.AddEndpointsApiExplorer();

builder.Services.AddSwaggerGen();


var app = builder.Build();


if (app.Environment.IsDevelopment())

{

    app.UseSwagger();

    app.UseSwaggerUI();

}


app.UseHttpsRedirection();


app.UseAuthorization();


app.MapControllers();


app.Run();



Ejecutar automáticamente los cambios durante el desarrollo

Cuando realizamos modificaciones en el código, normalmente tendríamos que detener la aplicación y volver a ejecutarla.

Para evitar esto, .NET proporciona una herramienta llamada Hot Reload mediante el comando:

dotnet watch run


Este comando observa los cambios realizados en el proyecto y recompila automáticamente la aplicación cuando detecta modificaciones.

Esto acelera considerablemente el desarrollo.


Acceder a Swagger

Una vez iniciada la aplicación, abre el navegador y navega a:

https://localhost:xxxx/swagger


sustituyendo xxxx por el puerto asignado a tu proyecto.

Aparecerá una interfaz similar a:

Swagger UI

 └── WeatherForecast



Probar un endpoint desde Swagger

Para ejecutar una petición:

  1. Expande el endpoint deseado.

  2. Haz clic en Try it out.

  3. Presiona Execute.

Swagger mostrará:

  • La URL utilizada.

  • Los parámetros enviados.

  • El código de respuesta HTTP.

  • El contenido devuelto por la API.

Por ejemplo:

200 OK


junto con la respuesta en formato JSON.


Alternativas a Swagger

Aunque Swagger será la herramienta utilizada durante este curso, existen otras opciones para probar APIs REST.

Postman

Permite crear colecciones de peticiones y automatizar pruebas.

Archivos HTTP

Visual Studio Code permite crear archivos:

peticiones.http


para ejecutar solicitudes HTTP directamente desde el editor.

Navegador

Para peticiones GET simples, también es posible utilizar directamente un navegador web.


Resumen

En este capítulo creamos una API utilizando ASP.NET Core 9, Visual Studio Code y .NET CLI.

Los comandos utilizados fueron:

Crear el proyecto

dotnet new webapi -n PeliculasAPI --use-controllers


Abrir el proyecto

code .


Ejecutar la aplicación

dotnet run


Ejecutar con recarga automática

dotnet watch run


Instalar Swagger

dotnet add package Swashbuckle.AspNetCore


Finalmente, configuramos Swagger para visualizar y probar los endpoints de forma gráfica mediante la URL:

https://localhost:xxxx/swagger


Con esto ya tenemos listo nuestro backend desarrollado con ASP.NET Core 9 y preparado para comenzar a implementar la funcionalidad de la aplicación de películas que construiremos a lo largo del curso.


viernes, 23 de octubre de 2026

Capítulo 015. Creación de un Web API con ASP.NET Core utilizando Visual Studio

Introducción

En este capítulo crearemos nuestro primer proyecto ASP.NET Core Web API utilizando Visual Studio. Esta API será el backend de la aplicación que desarrollaremos durante el curso y será responsable de exponer los servicios que consumirá nuestra aplicación Angular.

Si vas a trabajar con Visual Studio Code en lugar de Visual Studio, puedes omitir este capítulo y seguir el procedimiento alternativo que se mostrará más adelante.


Crear un nuevo proyecto Web API

Comienza abriendo Visual Studio.

En la pantalla principal selecciona la opción:

Create a new project


Visual Studio mostrará una lista con las plantillas de proyectos disponibles, entre las que se encuentran:

  • Aplicaciones de consola.

  • Aplicaciones Blazor.

  • Aplicaciones .NET Aspire.

  • Razor Pages.

  • APIs web.

  • Entre otras.

Para este curso seleccionaremos la plantilla:

ASP.NET Core Web API


Asegúrate de elegir la opción que utiliza C# como lenguaje de programación.

Luego haz clic en:

Next



Configuración del proyecto

En la siguiente pantalla debemos configurar la información básica del proyecto.

Nombre del proyecto

Utilizaremos el siguiente nombre:

PeliculasAPI


Ubicación

Selecciona la carpeta donde deseas almacenar el proyecto.

Una vez configurados estos valores, haz clic en:

Next



Configuración de ASP.NET Core

En la pantalla de configuración adicional seleccionaremos las siguientes opciones:

Framework

.NET 9


HTTPS

Mantén habilitado HTTPS para trabajar en un entorno seguro durante el desarrollo.

OpenAPI Support

Activa la opción:

Enable OpenAPI support


Controllers

Selecciona la opción:

Use controllers


Finalmente, haz clic en:

Create


Visual Studio generará automáticamente la estructura inicial de nuestro proyecto Web API.


Configurar el archivo launchSettings.json

Antes de comenzar a desarrollar, realizaremos algunas configuraciones adicionales.

En el Explorador de Soluciones navega hasta:

Properties

└── launchSettings.json


Este archivo contiene la configuración utilizada cuando ejecutamos la aplicación.

Habilitar apertura automática del navegador

Ubica la propiedad:

"launchBrowser": false


y cámbiala por:

"launchBrowser": true


De esta forma, al ejecutar el proyecto Visual Studio abrirá automáticamente el navegador.

Es recomendable realizar este cambio tanto en el perfil HTTP como en el perfil HTTPS.


Configurar la URL inicial

Agrega o modifica la propiedad:

"launchUrl": "swagger"


Esta configuración indica que, al iniciar la aplicación, se abrirá directamente la interfaz de Swagger.


¿Qué es Swagger?

Swagger es una herramienta que permite documentar y probar APIs de manera visual.

A través de Swagger podremos:

  • Visualizar todos los endpoints disponibles.

  • Consultar los parámetros requeridos.

  • Ejecutar peticiones HTTP.

  • Analizar respuestas del servidor.

  • Probar la API sin utilizar herramientas externas.

A lo largo del curso trabajaremos frecuentemente con esta herramienta.


Instalar Swashbuckle

Para habilitar Swagger en nuestro proyecto utilizaremos una biblioteca llamada Swashbuckle.AspNetCore.

Abrir el administrador de paquetes NuGet

Haz clic derecho sobre el proyecto:

PeliculasAPI


y selecciona:

Manage NuGet Packages...


Después ve a la pestaña:

Browse


y busca:

Swashbuckle.AspNetCore


Selecciona el paquete y haz clic en:

Install


Luego acepta los términos de instalación.


Configurar Swagger en Program.cs

Después de instalar el paquete Swashbuckle.AspNetCore, abre el archivo Program.cs y reemplaza la configuración de OpenAPI por la siguiente:

var builder = WebApplication.CreateBuilder(args);


// Add services to the container.


builder.Services.AddControllers();


// Servicios necesarios para Swagger

builder.Services.AddEndpointsApiExplorer();

builder.Services.AddSwaggerGen();


var app = builder.Build();


// Configuración de Swagger

if (app.Environment.IsDevelopment())

{

    app.UseSwagger();

    app.UseSwaggerUI();

}


app.UseHttpsRedirection();


app.UseAuthorization();


app.MapControllers();


app.Run();


Explicación

Registrar los servicios de Swagger

builder.Services.AddEndpointsApiExplorer();

builder.Services.AddSwaggerGen();


Estas líneas agregan los servicios necesarios para:

  • Descubrir los endpoints de la API.

  • Generar automáticamente la documentación OpenAPI.

  • Mostrar dicha documentación mediante Swagger UI.

Habilitar Swagger

app.UseSwagger();


Genera el documento JSON con la descripción de la API.

Habilitar Swagger UI

app.UseSwaggerUI();


Activa la interfaz gráfica que permite:

  • Ver los endpoints disponibles.

  • Consultar parámetros.

  • Ejecutar peticiones.

  • Visualizar respuestas.


Configuración de launchSettings.json

Además, el instructor configura el archivo Properties/launchSettings.json para que el navegador se abra automáticamente en Swagger.

"launchBrowser": true,

"launchUrl": "swagger"


Por ejemplo:

"profiles": {

  "https": {

    "commandName": "Project",

    "launchBrowser": true,

    "launchUrl": "swagger",

    "applicationUrl": "https://localhost:7001;http://localhost:5001",

    "environmentVariables": {

      "ASPNETCORE_ENVIRONMENT": "Development"

    }

  }

}



Resultado

Al ejecutar la aplicación con:

Ctrl + F5


o

Start Without Debugging


se abrirá automáticamente una URL similar a:

https://localhost:7001/swagger


donde podrás visualizar y probar todos los endpoints de tu Web API desde la interfaz de Swagger.

Nota para ASP.NET Core 9

Cuando creas un proyecto nuevo con la plantilla de .NET 9 Web API, es común encontrar inicialmente algo parecido a:

builder.Services.AddOpenApi();


...


if (app.Environment.IsDevelopment())

{

    app.MapOpenApi();

}


En este curso, esa configuración se reemplaza por:

builder.Services.AddEndpointsApiExplorer();

builder.Services.AddSwaggerGen();


...


app.UseSwagger();

app.UseSwaggerUI();


porque se utilizará Swagger UI durante todo el desarrollo para probar los endpoints de forma visual.



Ejecutar la aplicación

Para iniciar el proyecto podemos utilizar:

Ctrl + F5


o el botón:

Start Without Debugging


Visual Studio compilará la aplicación y abrirá automáticamente el navegador.

Si la configuración fue correcta, la URL mostrada será similar a:

https://localhost:xxxx/swagger


donde xxxx corresponde al puerto asignado por ASP.NET Core.


Explorar Swagger

Al abrir Swagger veremos una interfaz similar a la siguiente:

PeliculasAPI

└── Endpoints disponibles


De manera predeterminada, ASP.NET Core crea un endpoint de ejemplo que nos permitirá verificar que todo funciona correctamente.

Para probarlo:

  1. Expande el endpoint.

  2. Haz clic en Try it out.

  3. Presiona Execute.

Swagger enviará una petición HTTP al servidor y mostrará:

  • La URL utilizada.

  • El código de estado HTTP.

  • La respuesta recibida.

Esto confirma que nuestra API está funcionando correctamente.


Otras herramientas para probar APIs

Aunque utilizaremos Swagger durante el curso, existen otras alternativas para interactuar con APIs REST.

Entre las más populares se encuentran:

Postman

Herramienta de escritorio especializada en pruebas de APIs.

Permite:

  • Crear colecciones de peticiones.

  • Automatizar pruebas.

  • Organizar endpoints.

Archivos HTTP

Visual Studio y Visual Studio Code permiten crear archivos .http para realizar peticiones HTTP directamente desde el editor.

Ejemplo:

ejemplo.http


Desde estos archivos es posible ejecutar solicitudes sin necesidad de aplicaciones externas.


Enfoque utilizado en este curso

Aunque existen varias formas de probar una API, en este curso utilizaremos principalmente Swagger, ya que:

  • Está integrado directamente en ASP.NET Core.

  • No requiere software adicional.

  • Permite visualizar rápidamente todos los endpoints.

  • Facilita el aprendizaje y las pruebas durante el desarrollo.


Resumen

En este capítulo creamos nuestro primer proyecto ASP.NET Core Web API utilizando Visual Studio.

Las actividades realizadas fueron:

  1. Crear el proyecto PeliculasAPI.

  2. Configurar .NET 9 y el soporte para controladores.

  3. Modificar el archivo launchSettings.json.

  4. Instalar el paquete Swashbuckle.AspNetCore.

  5. Configurar Swagger en Program.cs.

  6. Ejecutar la aplicación.

  7. Verificar el funcionamiento de la API mediante Swagger.

Con esto ya tenemos preparado el backend que servirá de base para el desarrollo de nuestra aplicación de películas utilizando Angular 19, ASP.NET Core 9 y SQL Server.