Hidden amongst the deranged ramblings and assorted dross on this site are a few random bits of code that might actually prove useful to someone:
A C# Postcode Struct With Parser (29 May 2007)
A simple struct to represent a UK Postcode, offering a means of parsing a string as potentially being a valid postcode (or just an outer code), and for splitting that postcode into "inner" and "outer" code.
Team Foundation Server - Sharing Binaries and Class Libraries Across Multiple Projects (17 Mar 2007)
Back in March 2007 I wanted to be able to share common class libraries across multiple TFS projects rather than use a branch-and-merge scenario. On mature reflection, I'm not sure that this is a good idea at all, but it did help me learn a lot about MSBuild!
A Serializable KeyValuePair Class (17 Sep 2006)
The standard generic KeyValuePair class in the .NET Framework 2.0 can't be serialized as both the Key and Value properties are read-only. This bugged me as I wanted to pass instances of this class back from a web service. So I made my own version of the class.
Framework for Persisting .NET Classes Into SQL Server Image Fields, With Locking Ability (18 Jan 2005)
A generic implementation of Martin Fowler's Serialized LOB pattern for persisting and retrieving serializable classes into SQL Server. As an additional benefit, it allows these objects to be "locked" based on the key, so that only one user can store a given object at any given time.
As of October 2005, a version is now available that targets the .NET Framework 2.0.
Generic Sorter For Strongly-Typed Collections (07 Nov 2004)
A generic sorter, inheriting from IComparer, to allow the sorting of strongly-typed collections on any named public property which inherits from IComparable. Might save you some time if you often work with custom .NET collections, but will be rendered redundant by C# 2.0's in-built support for generics.
Update [27 Feb 2006] - this has been well and truly superceded by some excellent code that was anonymously emailed to me this month.
Custom Email Publisher For the MS Exception Management Application Block (15 Sep 2004)
The original MS EMAB came with a default publisher that logged exceptions to the Windows Event Log, but for most of my enterprise webapps I'd rather receive and email when an exception occurs. To that end I created this Custom Email Publisher, based on the default publisher. Probably redundant now that we have Enterprise Library to play with.
Inheriting From BaseValidator To Make Custom Validation Controls (30 Jun 2004)
A short example of how to roll your own validation controls, using BaseValidator.

