Web Hosting
26th September 2019
Cryptography
What is Cryptography?
2nd October 2019

Windows Communication Foundation (WCF) is an SDK for developing and deploying services on Windows.and it (Code named Indigo) is a programming platform  and  runtime system for building, configuring and deploying network-distributed services.WCF provides a runtime environment for your services, enabling you to expose CLR types as services, and to consume other services as CLR types. It is the latest service oriented technology; Interoperability is the fundamental characteristics of WCF. Windows Communication Foundation (WCF) is unified programming model provided in .Net Framework 3.0. WCF is a combined features of Web Service, Remoting, MSMQ and COM+. WCF provides a common platform for all .NET communication.

WCF is part of .NET 3.0 and requires .NET 2.0, so it can only run on operation systems that support it. Presently this list consists of Windows Vista (client and server), Windows XP SP2, and Windows Server 2003 SP1 or their later versions .

Advantage

  • Its made of a lot of different components, so you can create new components for security, transport, authentication
  • In WCF, there is no need to make much change in code for implementing the security model and changing the binding. Small changes in the configuration will make your requirements.
  • Its faster than ASMX
  • Supports Scaling/Load Balancing
  • WCF has integrated logging mechanism, changing the configuration file settings will provide this functionality. In other technology developer has to write the code.
  • Its Interoperability, for java, and more.
  • WCF is interoperable with other services when compared to .Net Remoting,where the client and service have to be .Net
  • WCF services provide better reliability and security in compared to ASMX web services.

Disadvantage

A drawback would be that, WCF is Microsoft’s implementation of SOA and hence its APIs are solely controlled by MS which makes interoperability a bit difficult. Also, to deploy WCF apps, you will need more underlying hardware resources on the platform on which the WCF applications will be running, since there is an additional layer of abstraction to deal with.

Features of WCF

Workflow Services
Workflow Service explains  how to create and configure workflow services.

Endpoints: Addresses, Bindings, and Contracts
Explainhow to control multiple aspects of your service.

Data Transfer and Serialization
Explain how serialization of data can be tailored for interoperation or future compatibility.

Sessions, Instancing, and Concurrency
Explain the instancing and session modes of WCF and how to select the right mode for your application.

Transports in Windows Communication Foundation
Explain how to configure the transport layer, the lowest level of the channel stack.

Queues and Reliable Sessions
Explain queues, which store messages from a sending application on behalf of a receiving application and later forward these messages to the receiving application.

Transactions
Explains how to created transacted operations that can be rolled back if needed.

Windows Communication Foundation Security
Explain how WCF security helps you to create applications that have confidentiality and integrity. Authentication and authorization are also available, as are auditing features.

Peer-to-Peer Networking
Details how to create peer services and clients.

Metadata
Explainmetadata architecture and formats.

Clients
Explain how to create a variety of clients that access services.

Hosting

Explain hosting. A service can be hosted by another application, or it can be self-hosted.

Interoperability and Integration
Explain how to use WCF to extend your existing logic rather than having to rewrite it if you have a substantial investment in component-based application logic hosted in COM+.

WCF Web HTTP Programming Model
Explainthe WCF Web Programming Model that allows developers to expose WCF service operations to non-SOAP endpoints.

WCF Syndication
Explainsupport to easily expose syndication feeds from a WCF service.

AJAX Integration and JSON Support
Explainsupport for ASP.NET Asynchronous JavaScript and XML (AJAX) and the Javascript Object Notation (JSON) data format to allow WCF services to expose operations to AJAX clients.

WCF Discovery

Explainsupport to enable services to be discoverable at runtime in an interoperable way using the WS-Discovery protocol.

Routing
Explainthe routing service.