WCF Web API vs ASP.NET MVC JSON web services [closed]

青春壹個敷衍的年華 提交于 2019-11-30 03:00:23

It is recognized by Microsoft, that there is some overlap between the two products. However, they do have a different focus:

  • If you are building a web site that consumes JSON from your web service then MVC is probably the best choice.

  • If you are building an API intended to be consumed by a variety of third party clients then WCF Web API is the best choice.

My own personal reasons include the fact that with WCF Web API means I can self-host in a Windows service, and I can avoid ASP.NET, web.config and Cassini :-)

Updated 6/24/14 by request:

What is now ASP.NET Web API (formerly WCF Web API) and ASP.NET MVC will formally merge in what is currently dubbed ASP.NET vNext (MVC 6).

http://www.asp.net/vnext/overview/aspnet-vnext/overview

===========================================================================

Original answer:

It was announced yesterday (2/8/2012) that the projects are formally merging. See:

http://www.c4mvc.net/meeting/?id=25

and

http://msdn.microsoft.com/en-us/hh824721

The c4mvc link should be updated with a link to Dan Roth's presentation soon.

I believe this question targets new WCF Web API and because of that it is not the same as question linked as duplicate.

WCF Web API removes some limitations of current WCF Rest support but the main disadvantage of the Web API is that it is only a draft - currently preview 4. It has no support and probably it is not supposed to be used in production environment. Also any new version can introduce breaking changes or remove whole set of features available in previous version. Because of that you should use ASP.NET MVC to build lightweight JSON service layer.

The differences are night and day. MVC Framework is not a web service layer. If you truly need a web service to be consumed by varying clients (and possibly on varying platforms) then you are left to choose between a WCF-based web service or an old-fashioned XML web service.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!