2011-03-26 26 views
20

Un enfoque muy común para implementar servicios RESTful es mediante la utilización de ASP.NET MVC para hacerlo a través de WCF.Servicios RESTful: WCF versus ASP.NET MVC

ASP.NET MVC tiene un excelente soporte REST a través de un enrutamiento URL flexible y una asignación flexible de métodos HTTP a las acciones del controlador.

WCF 4.0 ahora tiene un excelente soporte para implementar el servicio RESTful también utilizando el mismo mecanismo de enrutamiento ASP.NET que ASP.NET MVC.

Pregunta ¿Cuáles son sus experiencias trabajando con cualquiera de los 2 enfoques para crear servicios RESTful y los pros y los contras encontrados?

Respuesta

1

diría WCF es más adecuado para construir servicios, puede hacerlo con asp.net mvc pero requiere más ceremonia

+1

Ejemplo por favor? – jfar

10

servicios WCF pueden ser auto-organizada. No se requiere IIS. ASP.NET MVC se centra en la entrega de HTML, mientras que la pila .NET 4 WCF existente se centra más en XML y JSON.

La nueva http://wcf.codeplex.com es la próxima generación de REST en WCF y será significativamente más capaz que la pila existente.

La nueva pila será mucho mejor para admitir todos los tipos de medios diferentes. Proporciona un acceso mucho mejor al protocolo HTTP subyacente. Será mucho más comprobable y facilitará el uso de controladores reutilizables para agregar comportamientos estándar.

+3

ha planteado algunos puntos buenos. Por lo que he visto si la intención es alojar los servicios de WCF solo en IIS (similar a MVC) se necesitará algún código de plomería adicional para devolver un Xml ActionResult o cambiar entre JSON y XML para la misma acción en lugar de hacer cambios en el punto final a través de la configuración en WCF. Al ver que ASP.NET MVC también es muy comprobable (similar a WCF), ¿hay alguna otra diferencia clave que se note entre los 2? También estaría muy interesado en los comentarios de los usuarios que eventualmente eligieron la ruta MVC sobre la de WCF. –

+1

Realmente no me gusta trabajar con versiones beta y de vista previa, por lo tanto, la nueva API web WCF no es algo que desee hacer todavía. "Anuncio: WCF Web API ahora es ASP.NET Web API! ASP.NET Web API lanzada con ASP.NET MVC 4 Beta. La WCF Web API y el soporte WCF para el contenido de jQuery en este sitio se eliminarán para finales de 2012". También entonces http://wcf.codeplex.com/discussions/319671 A día de hoy, sigue siendo BETA http://www.nuget.org/packages/AspNetWebApi –

Cuestiones relacionadas