What is WCF. Explain its requirement if we have no of Distributed Technology.

There are a number of existing ways to develop distributed applications as Web services, .NET Remoting, Message Queuing (MSMQ) and COM+/Enterprise Services but all has few drawback. To overcome these shortcoming WCF come into existence Windows Communication Foundation (WCF) unification of all existing technology into a single framework for building service Oriented Applications (SOA). WCF works on ABC. ABC is the three building blocks of WCF and they are known as :-

  1. Address (Where): Address tells us where to find the services, like url.
  2. Bindings (How) : Bindings tells us how to find the services or using which protocols finds the services (SOAP, HTTP, TCT etc.)
  3. Contract (What) Contract that identifies the operations exposed by the endpoint.


"It introduced as part of the .NET Framework 3.0 and has continued to develop it for the .NET Framework 3.5 which Visual Studio 2008"

Why draw on WCF?

  1. It is Unification of all ex-Distributed Technology.
  2. It Support different Protocols as http, tcp, msmq etc.
  3. The WCF architecture has a number of extensibility points. If extra capability is required, there are a number of entry points that allow you to customize the behavior of a service
  4. It support Multiple Message Patterns & most common Pattern is Request-Reply.
  5. WCF supports publishing service metadata( Data Above Data) formats specified in industry standards such as WSDL, XML Schema and WS-Policy. It is used to generate and configure clients for accessing WCF services. Metadata can be published over HTTP and HTTPS or using the Web Service Metadata Exchange standard.
  6. It is Secure Message Exchange Technique. It can be Implement as SSL or WS-SecureConversation.
  7. It enable to develop Service Oriented Applications which loosely coupled, A loosely-coupled relationship implies that any client created on any platform can connect to any service as long as the essential contracts are met.


This blog written by Ms. Shabana Idrisi (Dot Net Trainer at Vtech Academy of Computers)- Dot Net Development Course