Difference between Web Service (ASMX), WCF REST (SVC) and Web API

Gayatri
 
on Mar 19, 2018 12:55 AM
16017 Views

Difference between Web Service (ASMX), WCF REST (SVC) and Web API?

asmx ( Righ click  -> add new item -> Web Service(ASMX) ) as well as

SVC services( Righ click  -> add new item -> WCF Service)  and 

web api ( Righ click  -> add new item -> Web API 2 Controller) in

MVC? Do practically they all 3 differ from each other?

 

Download FREE API for Word, Excel and PDF in ASP.Net: Download
kalpesh
 
on Mar 19, 2018 12:56 AM

Refer the below link for your reference.

Should it be a WebAPI or asmx

Mudassar
 
on Mar 19, 2018 04:25 AM
on Mar 19, 2018 04:27 AM

Web Service (.asmx)

  • It is based on SOAP and return data in XML form.
  • It support only HTTP protocol.
  • It is not open source but can be consumed by any client that understands xml.
  • It can be hosted only on IIS.

WCF (.svc)

  • It is also based on SOAP and return data in XML form.
  • It is the evolution of the web service(ASMX) and support various protocols like TCP, HTTP, HTTPS, Named Pipes, MSMQ.
  • The main issue with WCF is, its tedious and extensive configuration.
  • It is not open source but can be consumed by any client that understands xml.
  • It can be hosted with in the applicaion or on IIS or using window service.

Web API

  • This is the new framework for building HTTP services with easy and simple way.
  • Web API is open source an ideal platform for building REST-ful services over the .NET Framework.
  • Unlike WCF Rest service, it use the full feature of HTTP (like URIs, request/response headers, caching, versioning, various content formats)
  • It also supports the MVC features such as routing, controllers, action results, filter, model binders, IOC container or dependency injection, unit testing that makes it more simple and robust.
  • It can be hosted with in the application or on IIS.
  • It is light weight architecture and good for devices which have limited bandwidth like smart phones.
  • Responses are formatted by Web API’s MediaTypeFormatter into JSON, XML or whatever format you want to add as a MediaTypeFormatter.

Reference: StakOverFlow