With Visual Studio 2012, when I want to add a web service to an existing web site project, I have at least the following choices in the "Add New Item" dialog:
- Web API Controller Class
- AJAX-enabled WCF Service
- Silverlight-enabled WCF Service
- WCF Data Service
- WCF Service
- Web Service / ASMX (that's what I've been using until today)
(Maybe there exist even more choices, e.g. available as add-ons, extensions, NuGet packages, etc).
As far as I know, "Web API" is the newest technology for web services. Should this be used for all new development?
Or are there still situations, in which one of the other technologies should be considered? Is there any comparison of these technologies or some guidance, when to use which?