Windows Communication Foundation(WCF ) is a programming
platform and runtime system for building, configuring and deploying
network-distributed services. It is a tool often used to implement and
deploy a service-oriented architecture (SOA). It is designed using
service-oriented architecture principles to support distributed
computing where services have remote consumers. Clients can
consume multiple services; services can be consumed by multiple clients. Services
are loosely coupled to each other. Services typically have
a WSDL interface (Web Services Description Language) that any
WCF client can use to consume the service, regardless of which platform the
service is hosted on.
Features of WCF:
- Service oriented application
- Interoperability
- Multiple message pattern
- Service metadata
- Data contract
- Security
- Multiple transport and encoding
- Reliable and queued messages
- Durable messages
- Transaction etc.
A WCF Service is composed of three components:
1) Service Class - A WCF service class implements some service as a set of methods.
2) Host Environment - A Host environment can be a Console application or a Windows Service or a Windows Forms application or IIS as in case of the normal asmx web service in .NET.
3) Endpoints - All communications with the WCF service will happen via the endpoints. The endpoint is composed of 3 parts (collectively called as ABC's of endpoint) as defines below:
