Wednesday, May 16, 2012
WCF Vs Web Services
WCF/ASP.Net Web Services are used for developing web services. Here is a list of differentiation between these two.
Feature | ASP.NET Web Service | WCF |
Data Transformation | To and from Data Transition is done through XML Serializer | DataContractSerializer is used for data transition |
File Extension | asmx | .svc |
Webmethods vs DataContract Attributes | ASP.NET WebService uses Webmethods to translate .NET FW types in to XML. | WCF uses the DataContractAttribute and DataMemeberAttribute to translate .NET FW types in to XML. |
Limitations | Only Public fields or Properties of .NET types can be translated into XML.Only the classes which implement IEnumerable interface. ICollection interface can be serializable | Public/Private fields or properties of .NET types can be translated. |
IDictionary Interface class | Classes that implement the IDictionary interface, such as Hash table can not be serialized. | The DataContractSerializer can translate the Hash Table into XML. Hence using WCF we can even translate HashTable into XML |
Security | WCF is more secured than WebService | It is based on WS Standards. capable to run in any .NET executable, so it needs independent security capabilities. Transfer security=Responsible for providing message confidentiality, data integrity, and authentication of communicating parties. |
Binding | Web service supports only HTTP. | WCF supports multiple bindings HTTP,TCP,MSMQ,WS-HTTP etc |
Messaging | ASP.Net web service uses only SOAP for sending and receiving data. It uses Xml Schema to defines structure of message. | WCF can send message in any format. It uses SOAP for communication by default. It can use any other transport protocol for message transport . |
Performance | Slower compared to WCF | The main advantage of the design of the DataContractSerializer is better performance over XML serialization |
Fields / Properties | XMLSerialization does not indicate the which fields or properties of the type are serialized into XML | DataContratSerializer Explicitly shows the which fields or properties are serialized into XML |
Exception handling | In ASP.NET Web services, Unhandled exceptions are returned to the client as SOAP faults. | In WCF Services, unhandled exceptions are not returned to clients as SOAP faults. A configuration setting is provided to have the unhandled exceptions returned to clients for the purpose of debugging. |
Example | [WebService] | [ServiceContract] |
After you know the importance of the WCF on WebServices, We can create our Sample WCF application in next blog post.
No comments :
Post a Comment