Creando API con ASP.NET

ANTES DE LEER EL ARTÍCULO, POR FAVOR, LEA AQUÍ

El código disponible en GitHub.

El término API es una abreviatura de Application Programming Interfaces, que en español significa interfaz de programación de aplicaciones. Se trata de un conjunto de definiciones y protocolos que se utiliza para desarrollar e integrar el software de las aplicaciones, permitiendo la comunicación entre dos aplicaciones de software a través de un conjunto de reglas.

Así pues, podemos hablar de una API como una especificación formal que establece cómo un módulo de un software se comunica o interactúa con otro para cumplir una o muchas funciones. Todo dependiendo de las aplicaciones que las vayan a utilizar, y de los permisos que les dé el propietario de la API a los desarrolladores de terceros.

Para crear una API en Visual Studio en la pantalla de inicio seleccionamos Crear un Proyecto

Seleccionamos el tipo de aplicación ASP.NET Web API

Ponemos nombre al proyecto, en este caso ApiEjemplo

Seleccionamos la versión del Framework 7.0, el resto de los parámetros los dejamos como están.

Una vez creado el proyecto, procedemos a agregar Entity Framework.

Primeramente agregamos los paquetes NuGet necesarios:

En la consola de administrador de paquetes escribimos las siguientes líneas:

Creamos en la raiz del proyecto una carpeta que le llamamos Datos

Dentro de esa carpeta creamos un modelo que le llamaremos Persona con las siguientes propiedades:

También en esa carpeta creamos una clase de nombre ApplicationDbContext con el siguiente contenido:

Nos dirigimos al Program.cs que se encuentra en la raíz de nuestro proyecto y justo después de la línea builder.Services.AddSwaggerGen(); escribimos:

Donde la cadena de conexión que se hace referencia(Default) la creamos en el fichero appsettings.json quedando de la siguiente forma:

En la consola de administración de paquetes aplicamos la migración para crear la tabla en la base de datos:

Ya estamos listos para desarrollar la API para implementar un CRUD sobre la tabla Persona.

En la carpeta Controllers damos Click Derecho Agregar->Controlador

Seleccionamos Controlador API en blanco:

Es importante que el nombre de los controladores terminen con la palabra Controller

Una vez creado el controlador vamos a declarar el constructor donde inyectaremos el contexto de Entity Framework:

Y 5 métodos para las acciones del CRUD

 APIDescripciónCuerpo de la solicitudCuerpo de la respuesta
1GET /api/personaObtener todas las personasNingunaLista de Personas
2GET /api/persona/{id}Obtener una persona por identificadorNingunaPersona
3POST /api/ personaIncorporación de una nueva personaPersonaPersona
4PUT /api/ persona /{id}Actualizar una persona existentePersonaNinguna
5DELETE /api/ persona /{id}    Eliminación de una personaNingunaNinguna

1- Obtener todas las personas

2- Obtener una persona por identificador

3- Incorporación de una nueva persona

4- Actualizar una persona existente

5- Eliminación de una persona

Una ves listos los métodos podemos probarlos, el proyecto ASP.NET WebAPI contiene Swagger, que nos ayudará a probar la APÎ. Corremos la aplicación con F5:

Ahí podemos probar cada uno de las acciones del controlador Persona.

El próximo paso sería proteger el acceso al controlador usando un token de JWT pero eso será en otro artículo.