Web API proporciona una API basada en REST HTTP ambiente. La API web utiliza los patrones de MVC y les resultará muy familiar a los desarrolladores de ASP.NET MVC. Web API puede aprovechar las capacidades de HTTP como un protocolo de capa de aplicación, devolviendo recursos en múltiples representaciones (XML, JSON, HTML, etc.) de acuerdo con los encabezados de solicitud del cliente.
Por otro lado, WCF webHttpBinding usa los patrones de WCF, y va a atraer más al desarrollador de WCF - ServiceContracts, OperationContracts, integral (o sobrepeso, dependiendo de cómo lo mires, archivo de configuración), capacidad de self -host fuera de IIS.
Una de las cosas que me gusta de Web API es la capacidad de usar tipos dinámicos para escapar de las limitaciones del sistema de tipos. También me gusta el comportamiento de excepción predeterminado en la API web: contraste WCF webHttpBinding donde, de forma predeterminada, las excepciones aparecen como HTTP 500 + una carga útil HTML (yuk!).
Es bueno tener la opción entre dos excelentes tecnologías aquí. No describiría Web API como 'más nuevo' o 'mejor' que WCF, ya que esto implica que es una tecnología de reemplazo y que WCF webHttpBinding es heredado, lo cual no creo que sea cierto.
Elegí usar WCF webHttpBinding recientemente para exponer una API JSON para un servicio WCF SOAP existente. Creo que fue una buena elección porque encajaba con ese estilo de esa solución existente y minimizaba la cantidad de cambios requeridos.
Desde un Administrador de programas de Microsoft, realmente suena como "Si está haciendo HTTP, puede olvidarse de WCF" para mí. ¿Es esto lo que estás diciendo? ¿Cuál es el futuro de WCF en el área HTTP? –
WCF Web API es WCF :-) Lo que estamos diciendo es que WCF Web API es mucho más adecuado para trabajar con HTTP/construir servicios RESTful que WCF 4.0/webhttbinding. –