Archivo de la etiqueta: controller

Haciendo una API Rest en 1 hora con ASP.NET Web Api – III

ASP.NET Web API

En el capítulo anterior configuré el ORM estándar de .NET, Entity Framework 5, y realicé el mapeado de la tabla de datos que construí en el primero.

Este capítulo trataré sobre la construcción en sí de la API Rest con Web API, mostrando como en unos pocos click y selecciones la tendré funcionando y lista para ser probada con Fiddle.

Un CRUD REST casi automáticamente

Teniendo abierto el proyecto de Web API en Visual Studio, pulso con el botón derecho sobre la carpeta de “Controllers” para obtener el menú contéxtual. Aquí selecciono “Add” o “Añadir” (depende del idioma de tu instalación) y vuelvo a escoger “New Scaffolded Item…”.

Web API

En la ventana que se abre selecciono la plantilla de Web API 2 Controller con acciones, utilizando Entity Framework.

Web API

Lo cual me lleva a otra pequeña ventana en donde le cambio el nombre al Controller a PersonasController.

La importancia de escoger bien el nombre es que con esta denominación se construirá el servicio REST y así, en este ejemplo, las llamadas se realizarán a /api/Personas. Teniendo muy en cuenta que es sensible a las mayúsculas, y el no utilizar símbolos como las ñ o los acentos.

Como verás, tengo a continuación un aviso de que estoy utilizando EF 5, por lo cual no voy a poder obtener una API que funcione de forma asíncrona con este ayudante. Lo cual es una pena, pero que veremos en otro capítulo más de este tutorial.

Lo siguiente que debo hacer es seleccionar cual es la entidad que vamos a utilizar en el controlador para transmitir/recibir la información.

Y lo último es elegir el contexto de datos que voy a utilizar. Es decir el conjunto de entidades, operaciones y mapeado en Entity Framework que me permitirán manipular la base de datos. Y que en este tutorial (si has seguido los nombres que he ido poniendo) debe ser la que se lee en la siguiente imagen.

Web API Seguir leyendo Haciendo una API Rest en 1 hora con ASP.NET Web Api – III

Haciendo una API Rest en 1 hora con ASP.NET Web Api I [Actualización]

ASP.NET Web Api

[Actualización 16/01/2013] Me ha parecido que se ha quedado muy corto la construcción del esquema de datos y lo he alargado un poco más.

La llegada de Internet ha revolucionado en profundidad tanto el mundo de las telecomunicaciones, como el de la información, como el de la arquitectura de software.

La evolución de los sistemas SOA, basados en servicios “pesados” en XML y encapsulados en complejos mensajes SOAP, han ido perdiendo terreno ante las nuevas capas de servicios construidas sobre los verbos HTTP (GET, POST, PUT y DELETE), y que intercambian la comunicación por medio de los propios mecanismos del protocolo – como los datos en el cuerpo o encabezado – y el uso estándar de notación JSON para la transferencia de información.

Presentación del tutorial

Este tutorial va a llevarte de la mano en la elaboración de una API REST sencilla, que será capaz de realizar un CRUD sobre un tipo de objeto complejo. Es decir, inserción, recuperación, modificación y borrado de unidades de información.

Para ello he utilizado el framework de ASP.NET Web API, y Fiddler Web Debugger como herramienta para realizar las pruebas funcionales; como base de datos MS SQL Server Express; y como lenguajes de programación C#, Linq y Entity Framework. (No voy a utilizar async/await).

El resultado final serán cinco métodos REST diferentes:

  • POST http://<servidor_de_desarrollo>/api/persona/ (Inserta una nueva persona).
  • GET http://<servidor_de_desarrollo>/api/persona/1 (Recupera la persona con Id 1).
  • GET http://<servidor_de_desarrollo>/api/persona/ (Recupera todas las personas).
  • PUT http://<servidor_de_desarrollo>/api/persona/ (Actualiza los datos de una persona).
  • DELETE http://<servidor_de_desarrollo>/api/persona/ (Borra una persona).

Si te has fijado, con estos cinco métodos, cubro más del 80% de las necesidades de cualquier API. Y las construcciones que quedan son para llamadas complejas de datos, como paginación, ordenamiento o campos de selección y recuperación.

Ecosistema de desarrollo

Visual Studio 2013

El segundo objetivo de este tutorial es el compartir con los lectores de GenbetaDev el ecosistema de desarrollo que utilizo en mi labor profesional diaria, haciendo énfasis en utilizar versiones gratuitas (o de prueba gratuita).

Para ello, a continuación, añado los enlaces a las herramientas que he utilizado en la elaboración de esta pequeña serie:

Empezando con los datos

Acceso a la SQL Seguir leyendo Haciendo una API Rest en 1 hora con ASP.NET Web Api I [Actualización]