Similitudes entre ambas tecnologías
Aspecto | ASP.NET MVC | WEB API |
Routing: | Se utiliza para mapear las acciones a las diferentes paginas web | Utiliza la misma tecnología para acceder a los diferentes recursos |
Modelos: | Los modelos existen para representar una entrada de un blog un post o un comentario | Las peticiones http son mapeados a los diferentes modelos manteniendo la coneccion |
Filtros: | Permiten manejar diferentes acciones de acuerdo al tipo de petición que se esta haciendo | De la misma manera permite establecer filtros que manejaran las peticiones de acuerdo al tipo |
Scaffolding: | Permite usar la estructura de los modelos para devolver la pagina html con los mismo atributos y acciones predeterminadas | Asi mismo el Web Api permite tener una respuesta basada en el modelo al que pertenece |
Pruebas Unitarias: | ||
programacion Http | Permite abordar la programacion optmizado para dar responder a peticiones HTTP | |
Seleccion de respuesta http | En MVC la respuesta a toda peticion HTTP sera siempre una pagina html con extencion cshtml | En Web API la respuesta puede ser seleccionada por el cliente, se puede solicitar una respuesta en formato JSON o en formato XML |
Como puede observarse en el anterior comparativo las características de una y otra tecnología dependerán de nuestras necesidades, Web API esta orientado a trabajar como web services y MVC esta orientado a hacerlo como Web Forms, quizá la principal diferencia radique en el tipo de respuesta que devuelven a las peticiones MVC devuelve HTML formateado y listo para ser desplegado en un navegador, y Web APi devuelve XML y Json para ser leído por otro programa que se encargara de desplegar los datos en un dispositivo móvil en una tablet en un programa corriendo en la interfaz metro o en una aplicaicon windows form