Skip to main content

Posts

Showing posts with the label WCF

WCFServiceWrapper: v0.2 release

Update: 15th July 2008 - Project now hosted on Codeplex , links below updated. v0.3 is underway, check out the issues list on Codeplex; these will all be fixed in this next release. After creating WCFServiceWrapper I've been using it a fair bit to whip up wrappers to several existing business layer interfaces... (Recap: WCFServiceWrapper is a .Net application to generate the service layer code required to expose any existing non-WCF interface via WCF). I'm releasing v0.2 which includes... * New WinForms UI * Support for generating VB code. Console app cmdline switch /L:VB * Bugfix: Primitive datatypes and void return types from interface methods where not being handled correctly. * I have also refreshed the WCFServiceExample project to include this new version in the example zip. Version 0.2 application source code and example project can be downloaded from the new Codeplex project here (The example is a VS2008 solution providing a simple business assembly and an empty WCF se...

Wrap your existing business layer with WCF

[Update: 21-Jun-08, v0.2 released...more info here ] I've recently had some hands on exposure with WCF. My initial impressions are that its pretty slick. However I was pretty perturbed to learn how invasive WCF is - specifically the "DataContract" attributes required to control the entity serialisation. When designing software I start in the middle - usually a vanilla interface that represents some activity - this activity is UI and Data layer neutral...its upstream clients could be a UI or equally a service, likewise I make no assumptions about the persistance (if any) that might be required. So I was pretty unimpressed to learn that to expose an activity via WCF I needed to retrofit some WCF specific attributes to my interfaces and data entities in order for them to be WCF friendly. This does not sit well with me. Suddenly a context neutral component needs to know that it *might* be part of a WCF service and therefore has to be attributed just in case it is....and what ...