Friday, 8 June 2012

Differences Between Web Services and WCF in ASP.NET

WCF is a programming model and API.WCF is a replacement for all earlier web service technologies from Microsoft. It also does a lot more than what is traditionally considered as "web services".

WCF "web services" is a  part of a much broader spectrum of remote communication enabled through WCF. You can build a Web service using WCF, but you can also build a Web service using other APIs or "stacks".You will get a much higher degree of flexibility and portability doing things in WCF than through traditional ASMX because WCF is designed, from the ground up, to summarize all of the different distributed programming infrastructures offered by Microsoft. An endpoint in WCF can be communicated with just as easily over SOAP/XML as it can over TCP/binary and to change this medium is simply a configuration file mod. In theory, this reduces the amount of new code needed when porting or changing business needs, targets, etc.

ASMX is older than WCF, and anything ASMX can do so can WCF (and more). Basically you can see WCF as trying to logically group together all the different ways of getting two apps to communicate in the world of Microsoft; ASMX was just one of these many ways and so is now grouped under the WCF umbrella of capabilities.

Web Services can be accessed only over HTTP & it works in stateless environment, where WCF is flexible because its services can be hosted in different types of applications. Common scenarios for hosting WCF services are IIS,WAS, Self-hosting, Managed Windows Service.

The major difference is that Web Services Use XmlSerializer. But WCF Uses DataContractSerializer which is better in Performance as compared to XmlSerializer.

Web Service: webservice can host in IIS AND OUTSIDE OF IIS also.
Wcf: Wcf service can host in self hosting,IIS,WAS&Managed Windows Services.

2.File Format:
Web Service:  Webservice file extension is .asmx
Wcf :    WCF service file extension is .svc

3. Data Transformation:
Web Service: XML serializer
Wcf : Data contract serializer

4.Binding Or Transport Protocols:
Web Service: Http,Tcp,Custom
Wcf : Http,WS-Http,Tcp,Custom,Msmq,Point To Point

No comments:

Post a Comment