Cargando



ASP.NET MVC - Construyendo Servicios de Datos

En este tutorial veremos cómo hacer algunas acciones avanzadas sobre nuestro controlador Web API y aplicarlo a nuestro servicio de datos.


jun 29 2014 16:51
Profesional
jun 29 2014 19:09
Un servicio de datos nos permite hacer estructuras estándar en nuestra aplicación que podemos utilizar independientemente de la parte de nuestro sitio en que estemos gracias al uso de la tecnología AJAX.

Hemos visto que también que al crear el controlador correspondiente se nos generaban unos métodos base por defecto vacíos para que pudiéramos colocar ahí nuestra lógica, sin embargo que sucede cuando no deseamos utilizar la nomenclatura por defecto, pues podemos hacerlo rompiendo con la convención.

Registrando la Ruta


Para que nuestros controladores puedan funcionar correctamente, ASP.NET MVC debe saber que existen dentro de nuestra aplicación, por lo tanto debemos construir una ruta que cuando la llamemos podamos invocar dichos controladores y así acceder a nuestros servicios de datos.

Nuevo método
Entonces nuestra nueva ruta en vez de utilizar el acostumbrado RouteTable.MapRoute() vamos a utilizar ahora el RouteTable.MapHttpRoute() con ello ya nuestra aplicación sabrá a que nos estamos refiriendo con el nuevo controlador.


Veamos en la siguiente imagen un ejemplo genérico que podemos aplicar a nuestro proyecto.

asp_construir_serv_datosparte2.jpg


Al hacer esto ASP.NET toma en consideración el paradigma de convención sobre configuración.

Romper la Convención sobre la Configuración


A pesar que la convención sobre la configuración es un paradigma que nos ahorra mucho trabajo de código, hay ocasiones en los que esto no se adapta a nuestra aplicación, razones hay muchas y cada caso es particular, pero el que tengamos que romper la convención no nos impide la posibilidad de crear un servicio de datos.

Para romper esto simplemente vamos a generar nuestra acción como cualquier otra, pero en vez de tomar el nombre del método vamos a colocar nuestra propia nomenclatura, en ese momento el Framework se va a preguntar cómo debe atender esa acción y para evitar la confusión al momento de generar una acción nueva vamos a explicar con qué método va a trabajar dicha acción.

[HttpGet]
public Subasta EncontrarSubasta(int id)
{
}

En el código que hemos colocado, vemos lo que explicamos, en este caso le indicamos que la acción va a ejecutarse con el método GET de HTTP, luego le decimos de qué modelo va a extenderse y le colocamos el nombre correspondiente. Como observamos no es nada difícil.

Llamar a Nuestro Servicio


Llamar al servicio es la última parte de nuestro servicio de datos, como sabemos el formato JSON es el predilecto para este tipo de casos, por lo tanto si utilizamos una librería como jQuery podemos consultar directamente como vemos en el siguiente código ejemplo:

<script type="text/javascript">
$(function () {
	 $.getJSON("api/subasta/",
	 function (data) {		
		 $.each(data, function (key, val) {
			 var str = val.Description;
			 $('<li/>', { html: str }).appendTo($('#subastas'));
		 });
	 });
});
</script>

Aquí lo que hacemos es llamar con el método getJSON a nuestra ruta que hemos construido, en este caso sería /api/subasta/ esto hará que se dispare la acción Get y nos devuelva el dato necesario que luego podremos procesar como mejor nos parezca, en el caso del ejemplo hemos generado una lista ordenada en HTML.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X