Why we need to choice WCF

No.of Views1369
Bookmarked0 times
Downloads 
Votes0
By  helloraj   On  16 Feb 2010 00:02:30
Tag : WCF , General
Why we need to choice WCF
emailbookmarkadd commentsprint

Images in this article missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at info@codegain.com

 

Introduction

Today, when we build distributed applications, we have number of programming models.In .net we can use following programing model to build a distributed applications. 

1. ASP.NET Web Services (ASMX)
2. Web Services Enhancements (WSE)
3. MSMQ/ System. Messaging
4. Enterprise Services
5. Remoting

 Each programming model has a different set of APIs, different feature sets, and a different core set of scenarios like

1. ASP.NET Web Services (ASMX) – Our current Web services stack provides basic Web services support and interoperability with Web services running on non-Microsoft platform. 

2. Web Services Enhancements (WSE) – A supported extension to the .NET Framework that provides end-to-end standards-based security for Web services.

3. System. Messaging – This namespace in the .NET Framework provides managed APIs to MSMQ, enabling developers to build asynchronous reliable distributed applications.

4. Enterprise Services – Provided through the System.EnterpriseServices namespace in the .NET Framework, Enterprise Services (or “ES”) provides managed APIs to COM+. COM+ provides component-based programming for doing enterprise critical functionality such as transaction.

5. Remoting – Provided through the System.Remoting namespace in the .NET Framework, .NET Remoting exposes the CLR type system remotely and provides location transparency for objects.

While these technologies provide a wide range of functionality, they exist in silos – isolated from one another. This creates an impedance mismatch across the technologies hindering our ability as developers to “compose” or combine functionality across them. For example:You want to use .NET Remoting for its rich extensibility model, but you want an ES-style transaction to flow.

How do you do this?

or 

You want to use ASMX for its interoperability, but you want to provide direct reliable messaging guarantees.

How is this accomplished?

Today, scenarios like these that involve the combination of functionality across these technologies are more of a challenge than it should be. They often involve hundreds and sometimes thousands of lines of code to accomplish.

With WCF, the challenges of silo programming models become a thing of the past. WCF provides you with a unified programming model that brings together the best aspects of existing Microsoft technologies. What this means is that, with WCF, you will no longer need to wonder “which technology do I use (ASMX, Remoting, etc)” when building a connected system. All of the application-to-application and intra-application communication for your connected will be handled by WCF. This unified programming model is exposed to you through the System. Service Model namespace. Since WCF provides all of the features of these existing Microsoft technologies, WCF supports all of the scenarios currently supported by these technologies.

In addition, WCF enables new scenarios that are currently not possible or very hard to implement with existing technologies because WCF allows you to compose functionality across these existing technologies. For example, this means that you’ll be able to achieve secure, reliable, transacted Web services by combining/composing the functionality that previously existed in silos.

 
Sign Up to vote for this article
 
About Author
 
helloraj
Occupation-Not Provided
Company-Not Provided
Member Type-Fresh
Location-Not Provided
Joined date-23 Jul 2009
Home Page-Not Provided
Blog Page-Not Provided
 
 
Other popularSectionarticles
Comments
There is no comments for this articles.
Leave a Reply
Title:
Display Name:
Email:
(not display in page for the security purphase)
Website:
Message:
Please refresh your screen using Ctrl+F5
If you can't read this number refresh your screen
Please input the anti-spam code that you can read in the image.
^ Scroll to Top