Learning Curve…

Archive for the ‘Windows Communication Foundation’ Category

These terminologies are the core on which SOA stands. Every service must expose one or more ends by which the service can be available to the client. End consists of three important things where, what and how:-
Contract (What)
Contract is an agreement between two or more parties. It defines the protocol how client should communicate with your service. Technically, it describes parameters and return values for a
Address (Where)
An Address indicates where we can find this service. Address is a URL, which points to the location of the service.
Binding (How)
Bindings determine how this end can be accessed. It determines how communications is done. For instance, you expose your service, which can be accessed using SOAP over HTTP or BINARY over TCP. So for each of these communications medium two bindings will be created.


SOA is based on four important concepts:-

Boundaries are well defined
In SOA, everything is formalized. The client who is consuming the service does not need to know
how the implementation of the service is done. If you look at some old methodologies of
communication like DCOM. Any changes at server level the client also has to change. Therefore,
the server and client implementation was so much bound that changes need to be done at all
places. In SOA, the rule is if you do enhancement you do not need to change anything at the
client. SOA based application only understands that there is an end point, contract, and bindings.

Services evolve
Change is the law of nature and services will evolve. In SOA, services can be versioned and you
can host those services in new ends. For instance, you have a service called as “Search Tickets
(Ticket Number) “which gives details based on Ticket Number and its exposed on end point
“ep1”. Tomorrow you want make your Search Tickets service more useful by also providing an
extra option of allowing him to search by passenger name. Therefore, you just declare a new end
“ep2” with service “Search Tickets (Ticket Number, Passenger Name)”. So the client who is
consuming the service at end ep1 continues and at the other end, we have evolved our service by
adding new ends ep2.

Services share only schemas and contracts
Services use Schemas to represent data and contracts to understand behavior. They do not use language dependent types or classes in order to understand data and behavior. XML is used to define schemas and contracts. Due to this, there is not heavy coupling between environments.

Service compatibility is policy based
Policy describes the capabilities of the system. Depending on policies, the service can degrade to
match the service for the client. For instance your service needs to be hosted for two types of
client one which uses Remoting as the communication methodology while other client uses
DCOM. An ideal SOA service can cater to both of them according to there communication

WCF (Indigo was the code name for WCF) is a unification of .NET framework communication technologies. WCF is a unification technology, which unites the following technologies:-
• NET remoting
• Web services
• COM+.

It was previously known by its codename Info Card. It is a framework by Microsoft, which securely stores digital identities of a user and provides a unified interface to choose the identity for a particular transaction, such as logging in to a website. Windows Card Space is a central part of Microsoft’s effort to create an identity met system, or a unified, secure and interoperable identity layer for the internet.

In one simple equation .NET 3.0 = .NET 2.0 + Windows Communication Foundation + Windows Presentation Foundation + Windows Workflow Foundation + Windows Card Space.

Features Web Service WCF
Hosting It can be hosted in IIS It can be hosted in IIS, windows activation service, Self-hosting, Windows service
Programming [WebService] attribute has to be added to the class [ServiceContraact] attribute has to be added to the class
Model [WebMethod] attribute represents the method exposed to client [OperationContract] attribute represents the method exposed to client
Operation One-way, Request- Response are the different operations supported in web service One-Way, Request-Response, Duplex are different type of operations supported in WCF
XML System.Xml.serialization name space is used for serialization System.Runtime.Serialization namespace is used for serialization
Encoding XML 1.0, MTOM(Message Transmission Optimization Mechanism), DIME, Custom XML 1.0, MTOM, Binary, Custom
Transports Can be accessed through HTTP, TCP, Custom Can be accessed through HTTP, TCP, Named pipes, MSMQ,P2P, Custom
Protocols Security Security, Reliable messaging, Transactions


Learning days (Calendar)

July 2018
« Jun    

Knowledge Bank (Archives)

I am on Twitter

Blog Stats

  • 549,136 hits

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 43 other followers

%d bloggers like this: