Abstracting your Dependency Injection framework

I’ve used various Dependency Injection frameworks in the last year or so and have yet to settle on any one in particular. My focus has been on StructureMap and Microsoft’s Unity (I know I know everyone seems to dislike the latter for some reason but it does have its uses!). On a couple of occasions I had to switch DI …

Model *View* Controller

A lot is being made of Microsoft’s Model View Controller (or MVC) framework at the moment. I have only spent a couple of days working with it so far but it does look promising. If you are a TDD convert or just interested in solid OOP principles such as separation of concerns it may well be right up your street. …

Code 39 Mod 43 Checksum

I needed to do some work with barcodes recently, specifically I needed to handle Code 39 Mod 43 barcodes. Given a barcode string this function should return the relevant Mod 43 checksum. public class Code39     {         ///<summary>         ///Returns the expected checksum for the specified barcode         ///</summary>         ///<param name="barcode"></param>         ///<returns></returns>         public string ValidateMod43(string barcode)         {             int subtotal = 0;             const string …

3

Log4Net Custom Appender

Log4Net is an excellent logging framework which neatly separates the specifics of your logging implementation from your business logic. The upshot is that you can write code such as Log.Error("An error occured") in your code, and configure the logging somewhere else (usually app/web.config). To actually process the output you use Appenders. Log4Net has several built in appenders for logging to …

Shocking Gotcha – ASP.NET user controls not being referenced

Sometimes I just want to quit and take up kite flying or something… I was extending a feature for a site that used a user control called that had a class name of controls_searchboxui embedded in an aspx page. The new functionality meant that further user controls were to be created and only one of them would be programitcally added …

Subsonic

Just a quick recommendation to anyone fed up of writing long-winded Data Access Layers. Take a moment to check out Subsonic. Subsonic Download Page Subsonic takes a lot of the time out of Data Access development by generating a DAL for you, all you need to do is specify the connection to your database and voila you get strongly typed …

Visual Studio Hotfix rollup

If you’re using VS2008 for web development, you will probably want to download the following hotfix which fixes some performance/usability issues. See Scott Guthrie’s post for more info.

1

Nmock Gotcha about Reference Parameters

I wrote a method in a view that cause me no end of grief when testing its presenter the other day. I’ll elaborate on this a little more when I get the time but for now, here are the bones of the issue: public bool TrySetSummaryContent(string content, out Exception raisedError)         {             raisedError = null;             try             {                 webBrowser.DocumentText = content;             } …

Upgrading to Visual Studio 2008

Visual Studio 2008 allows you to work on .net 2 projects without conversion to the new .net 3.5 framework, but there are a couple of issues to look out for. When you open a 2005 solution file in Orcas Beta 2, you will find that it wants to convert the solution and project files. You can then choose whether to …