Why WCF...???
What is WCF Service?
WCF stands for Windows Communication Foundation and is part of .NET 3.0. WCF is a Microsoft platform for building distributed and interoperable applications.
WCF supports multiple languages and multiple platforms.
Why Should We Use WCF Service?
Let’s take these two scenarios:
We have two clients and we need to implement a service for them:
- The first client is using Java Application to interact with our service. So for interoperability, this client wants messages in XML format and the protocol to be HTTP.
- The second client uses .NET, so for better performance, this client wants messages in binary format and the protocol to be TCP.
Without WCF Service
- To satisfy the first client requirement, we use web service.
2. To satisfy the second client requirement, we use .NET Remoting.
These are two different technologies, and have completely different programming models. So the developers have to learn different technologies.
So to unify and bring all technologies under one roof, Microsoft has come with a new programming model called WCF-Windows Communication Foundation.
With WCF
You implement one service and we can configure as many end points as we want to support all the client needs. To support the above 2 client requirements, we would configure 2 end points. In the endpoint configuration, we can specify the protocols and message formats that we want to use.
So, the conclusion is that:
- A web service to exchange messages in XML format using HTTP protocol for interoperability
- A remoting service to exchange messages in binary format using TCP protocol for performance