Chalalo Land

Tecnologías ASP.NET y un poco Más

Contacto


 Si quierer cooperar, yo feliz, muy agradecido :)

De donde me Visitan?

Locations of visitors to this page

Generic Content

Si te gustaron los articulos, y te animas te estaría muy agradecido!


Recent Posts

Tags

Community

Blogs de MVP

Amigos Geeks

Blogs Imperdibles

GODS

Archives

Email Notifications

Usando ASP.NET Web API con ASP.NET Web Forms

Revisando el siguiente articulo que hablaba sobre el uso de ASP.NET Web API y ASP.NET WebForms, me entusiasmé con escribir este articulo que prácticamente es la traducción de el articulo original.

Últimamente hemos visto varios artículos muy buenos sobre ASP.NET Web API con MVC 4, te recomiendo leerlos para que tengas una idea de lo cool de esto, con los siguientes artículos que están excelentes:

Sin embargo, también se pueden utilizar WebForms junto a esta nueva Web API, Si! WebForms, para que no se sientan abandonados los programadores que utilizan este método.

Para esto vamos a utilizar Visual Studio 2010 con la ASP.NET Web API Beta instalada, (Ojo que si tienes el Preview de VS11, vas a tener que desinstalarla)

Primero que nada, vamos a crear un Nuevo Sitio Web Vacío:

image

Luego vamos a agregar una ASP.NET Folder para la implementación. Acá vamos a agregar una carpeta App_Code :

image

Luego vamos a agregar un nuevo componente ,una clase Web API Controller en la carpeta App_Code, recuerda que el nombre de la clase debe terminar en Controller (y no Controller1 o cualquier otra cosa)

image

La nueva clase ValuesController nos muestra una muy básica implementación de Web API, con soporte para HTTP GET, POST, PUT y DELETE, es decir lo que llamamos verbos.

Nota, si estas con  C#, debes arreglar un bug en el namespace, el cual comienza con un punto.

image

Vamos a modificar el Controlador(que hereda de ApiController) cambiando el retorno del GetValues y GetValue, que nos presenta la plantilla y vamos a agregar una ruta en la tabla de rutas  para utilizarlas en el ruteo de mensajes de la Web API.

Vamos a agregar y abrir un Global.asax del proyecto, y hacemos las siguientes tareas:

  • Primero vamos a agregar System.Web.Routing y System.Web.Http para acceder a los namespace correspondientes.
  • Luego agregamos la entrada de la ruta en la tabla en el método Application_Start
  • Nuestro Global.asax se verá de la siguiente forma:

    image

    Ahora ya estamos listos con el demo, vamos a ejecutar la demo:

    image

    Mi sitio está corriendo en:

    http://localhost:53016/WebApiWebForms/

    No tenemos una página web por defecto, recuerda que estamos ocupando Web API, por lo que vamos a acceder al controlador:

    http://localhost:53016/WebApiWebForms/api/values

    Podemos ver que el response retorna application/json ,que IE nos pide guardar como un archivo, si abrimos este archivo vamos a ver:

    ["Chalalo","Gonzalo"]

    http://localhost:53016/WebApiWebForms/api/values/1

    Ahora el retorno, debido a que se accedió el controlador GetValue es:

    "Chalalo"

    Como ven bastante sencillo, y pueden utilizarlo sin problema desde un proyecto WebForm o de un proyecto MVC.

    Espero que les sirva!
    @chalalo

    Posted: 25/2/2012 0:44 por Gonzalo Perez | con 1 comment(s)
    Archivado en:
    Comparte este post:

    Comentarios

    MVP Factor ha opinado:

    Nuestro buen amigo Gonzalo Pérez C , nos ha compartido su artículo: Usando ASP.NET Web API con ASP.NET

    # March 6, 2012 12:54 AM