WCF is .net framework ships with .net for building service oriented applications , used to send data asynchronously from one service end point to another. Service endpoint may be an independent service available all the time or a part of another application ( hosted in it ). The data which it sends could be a text, xml or complex such as binary stream etc.We can use WCF for real time data exchange, polling , business transactions etc.
Some key characteristics of WCF are :
- Service Orientation
- Multiple Message Patterns
- Service Metadata
- Data Contracts
- Multiple Transports and Encodings
- Reliable and Queued Messages
- Durable Messages
- Ajax and Rest Support
Why to use WCF instead of conventional Web Services:
|-> Communication can happen over HTTP,TCP, IPC or even MSMQ.
-> It can be configured to have simplex,request-response or even full duplex communication.
-> Can be hosted inside web server or event self hosted.
|-> Communication can happen over HTTP only.
-> Only simplex and request-response communication is possible.
-> Work in stateless fashion over HTTP and hosted inside a web server.
That was very simple introduction to WCF , stay tuned :)