WCF (Window Communication Foundation) is a solution for developers to work in distributing environment. WCF mainly for make communication between applications. Before WCF, the technologies to make communication between applications were ASMX, .NET remoting, and COM+. WCF provides a common platform for all .NET communication.
WCF is a framework for developing, configuring, exposing, and hosting services. All service providers were agree on SOAP concept for making communication between application before WCF. The idea of WCF is a combination of SOAP and web service.
There are two categories of classes in WCF.
. Service model classes handle configuration and validation.
. Channel layer classes handle things such as communication and data transformation.
WCF services expose functionality through one or more endpoints. Clients communicate with the service's endpoint. In configuring an end points there are three components require.
These three components are interrelated.
An address mean an URL.
Binding tells the WCF runtime how your endpoint communicates.
Contracts mean it gives the information of working endpoints.
With the help of XML-based config information we can configure an end point, programmatically using methods/properties, or with both XML config files and some coding. WCF includes multiple usability avenues. For example, we can use WCF out of the box with little or no coding or elect to build custom implementations for all aspects of your service.
In making communication channels plays an important role, the WCF runtime detects the binding for creating the channels. The main task of channel are receiving and transforming data. Data goes in one end of the channel, the channel operates on the data, and new data is dumped out the other end of the channel.