RioterDeckers' HeadQuarter

Our opinions about Microsoft technologies and the way we are working with.
Welcome to RioterDeckers' HeadQuarter Sign in | Join | Help
in Search

Nezdeboeuf

ProxyFactory launch

Even if the revolution announced by MS with its .Net 3.0 platform is just around the corner, the fact is that its adoption curve will be slow enterprise wide because the revolution goes as far as the OS both on client and server.
The emergence of the WCF platform announces the unification of all communications technologies provided by the .NET platform in a common foundation. However, it is still a safe bet to develop a library to leverage NET 2.0 generics and SchemaImporterExtension mechanisms to offer a similar developer experience.

Such a library already exists and targets only web services communication, it was developed by Christian Weyer from thinktecture but, as opposed to the WCF ChannelFactory<TChannel>, his library doesn’t provide an effective mechanism to handle specific types during the proxy generation process. This is what is tackled by the ProxyFactory by taking advantage of SchemaImporterExtension mechanisms. Futhermore, alternative communication technologies are targeted such as Remoting and WSE. This library offers a convenient way to provide an easy-to-use programming model that first, addresses in a common way two heterogeneous communication channels (Asmx and Remoting) but also help to drive existing applications towards the unification of the communication platforms proposed by Microsoft .Net 3.0 with WCF.

Even if ProxyFactory is based a business contract it doesn’t break any functionalities available to asmx. The well-known asynchronous support still works; therefore using interface inheritance it is trivial, client side, to add the methods allowing asynchronous calls to the original contract.
Thanks to a custom
Dependency Property-like mechanism the same level of parameterization of each CommunicationPlatform is still available. It is important to keep in mind that the ProxyFactory federates where WCF unifies; therefore each CommunicationPlatform has its own set of parameters. These are exposed via a Dependency Properties mechanism inspired by .Net 3.0’s. Furthermore, this mechanism is used to define the cache policy associated to the dynamically generated assembly.

This project is available on Codeplex at the following url: http://www.codeplex.com/ProxyFactory so watch out for the first release!

Along with the binaries, a getting started package will be available where you will find details about the concept behind the ProxyFactory and 4 samples to walk through step by step. The first one covers a web service dynamic proxy generation, the second covers a .Net Remoting dynamic proxy generation, the third and fourth shows you additional concepts such as asynchronous calls and proxy configuration using a mechanism similar to dependency properties as described above.
Finally, if you really can’t wait for the release to go public (which will happen sometime between today and tomorrow) check out
this video for a quick overview of ProxyFactory.

So gentlemen, start your favorite browser!

Published Tuesday, November 21, 2006 2:51 AM by raskal

Comments

No Comments
Anonymous comments are disabled

This Blog

Post Calendar

<November 2006>
SuMoTuWeThFrSa
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

Syndication

Powered by Community Server, by Telligent Systems