• 04 Jan 2010 » Fixing a bug in ASP.NET Ajax and the pain of leaky abstractions

    There was a time when all my energies and effort went into building web applications. In the beginning the platform I was on was Microsoft ASP 2.0, but since 2002 it became all about ASP.NET Web Forms.

  • 04 Sep 2009 » Improving performance with generic delegates in .NET

    Lately I have been involved in the performance profiling work of a Windows client application, which customers had lamented to be way too slow for their taste.

  • 02 Jul 2009 » Isolating WCF through Dependency Injection – Part II

    In my previous post, I talked about how to design a class that uses a WCF client proxy in such a way to make it testable in unit tests, without having to spin up a real service to answer the requests. The technique I illustrated uses a particular Inversion of Control (IoC) principle called Dependency Injection (DI), in which objects that a given class depends on get pushed into it from the outside rather than being created internally.

  • 25 Jun 2009 » Isolating WCF through Dependency Injection – Part I

    I have to admit that in the beginning I didn’t think Inversion of Control (IoC) Containers were that big of a deal. The idea of relying on an external agent to manage all the associations between objects in an application, sounded like it would bring more problems than advantages. Overkill. But I was wrong.

  • 06 Apr 2009 » Another Visual Studio Color Theme

    An interesting trend has emerged in the .NET community during the past couple of years, which involves developers sharing their favorite color theme for the Visual Studio code editor with their peers.

  • 04 Mar 2009 » Enforcing coding standards with Microsoft StyleCop

    I can’t stress enough the importance of having a code convention in place before starting in any kind of software project.

  • 06 Feb 2009 » Managing shared cookies in WCF

    The ASMX Web Services framework, as obsolete as it may feel, still supports HTTP cookies in the exact same way as you would normally expect. WCF, on the other hand, broke that tradition in the name of a higher level API. This article explains how the two programming models handle cookies and suggests a solution to the problem of sharing a common cookie across multiple Web Service requests.

  • 27 Nov 2008 » Migrating ASP.NET Web Services to WCF

    I am currently in the middle of a project where we are migrating a (large) amount of web services built on top of ASP.NET in .NET 2.0 (commonly referred to as ASMX Web Services) over to the Windows Communication Foundation (WCF) platform available in .NET 3.0. The primary reason we want to do that, is because we would like to take advantage of the binary message serialization support available in WCF to speed up communication  between the services and their clients. This same technique was possible in earlier versions of the .NET Framework thanks to a technology called Remoting, which is now superceded by WCF. In both cases it requires that both the client and server run on .NET in order to work. But I digress.

  • 09 Oct 2008 » Visual Studio Code Coverage reports with MSBuild

    Recently I had a project where I was using Microsoft Visual Studio 2008 Team System for development and CruiseControl.NET for doing continuous integration. I usually care about code coverage when running unit tests, so I decided to integrate the code profiling tool included in Visual Studio Team System as part of my build process, in order to produce a code coverage report with each build.