Workflow input/output Activities for WCF

Marcel de Vries is doing some interesting work creating WF input and output activities using WCF instead of plain web services. If you want to take a look a the code you can find it at CodePlex, to be exact at   See his blog here and here for more details about the project.   Enjoy!     Maurice de Beijer  

Cool tool: SQL Prompt

If you typing is anything like mine (that means terrible) that IntelliSense is a true blessing. And if you want IntelliSense when typing SQL code you really should check out Red-Gate SQL Prompt.     See for more info.   Enjoy!     Maurice de Beijer  

ASP.NET AJAX 1.0 Released

Well it has had a lot of coverage already but now the final release has just been posted up on the web [:)] Read the latest news at Scotts blog at Enjoy!  

The Web Client Software Factory is released

The Patterns and Practices group have just finished and shipped the Web Client Software Factory. If you haven’t looked into software factories before this is a great place to get started, and even if you don’t use it in your daily work just studying it will be a great experience.   This software factory make good use of several design pattern. Among the more interesting to be aware of are the View-Presenter and the Service Locator. If nothing else learning these will improve your software design skills [:)]   And they have incorporated Windows Workflow Foundation as a possible engine for … Continue reading The Web Client Software Factory is released

Windows Communication Foundation clients and IDisposable

If you are using a WCF client make sure you either Close() or Dispose() the client when you are done. I failed to do so and got bitten by a big memory leak [:(] I was using a NetMsmqBinding and forgot to close the client when done. By itself the code worked just fine, no leaks or nothing. But then the same piece of code got called from inside another NetMsmqBinding server during the reception of a message and it generated a memory leak big time. Of course I should have Disposed() the client but the IDispose implementation is private … Continue reading Windows Communication Foundation clients and IDisposable

ILMerge to the rescue

Is your solution plagued by a large number of assemblies that need to be loaded? Well ILMerge will merge them together into one single assembly. A single assembly is so much easier to distribute after all [:)]   Download it here. Or read more about it over here.   One interesting thing is that the readme says “It does not yet support Rotor or Mono“. Now how often does Microsoft use the not yet in combination with Mono? Interesting thought!   Enjoy!     Maurice de Beijer  

Another useful class

I am probably the last person to discover this but only today I discovered the Stopwatch type in the System.Diagnostics namespace. Real nice when you want to determine how long a certain action took [:)]   Stopwatch timer = Stopwatch.StartNew(); timer.Start(); // Do some stuff you want to time. timer.Stop(); Console.WriteLine(timer.Elapsed.ToString());   Use the Stopwatch.IsHighResolution to check if the timer is using high resolution of not.   Enjoy!     Maurice de Beijer  

SQL Server CE

It has taken a while but it’s finally there. And that would be SQL Server Compact Edition, the great little in process database. Great is you need a small database in lots of applications, not just offline smart client/ Admittedly that is one of the places where it shines [:)]   Download it form here.   Enjoy!   Maurice de Beijer  

Adding a Google Sitemap to your ASP.NET site

If you want Google to index your web site properly having a sitemap is a big bonus. Unfortunately a Google Sitemap is not the same thing as a ASP.NET sitemap. And that is a bit of a shame because you are quite likely to have the latter around. Well both are XML based files so converting from one to the other can’t be all that hard right? Right! and best of all you don’t even need to do it yourself because Bertrand Le Roy has already done it for us. See for his blog post about it or download it … Continue reading Adding a Google Sitemap to your ASP.NET site

More on creating in image from a workflow

Turns out I forgot to include one of the utility functions use in my previous two blog posts at and at. The code is the GetAllActivities() function in the WorkflowUtils class.   This is the missing method:   PublicSharedFunction GetAllActivities(ByVal root As Activity) As List(Of Activity)     Dim result AsNew List(Of Activity)     Dim i AsInteger = 0     Dim current As Activity     result.Add(root)       While i < result.Count         current = result(i)         Dim ca As CompositeActivity = TryCast(current, CompositeActivity)           If ca IsNotNothingThen             result.AddRange(ca.Activities)         EndIf         … Continue reading More on creating in image from a workflow