QuickLog is an EXTREMELY basic implementation of a logging API. Easy to extend by implementation of an event but sufficient to use by itself for some needs. It’s own API can be used directly or all calls to System.Trace.Write(…) will also be directed to the current output log file. The log does not roll until [...]


FileList is a simple file enumeration class that can be used to easily find sets of files. Provide it a list of directory and/or file names and simply let it figure it out. It will raise an event for custom filtering or has some simple attribute-level filtering built-in. FileList files = new FileList(@”C:\Temp\*”); files.Add(@”C:\boot.ini”); files.Add(@”C:\*.bat”); [...]


The shared XmlConfiguration utility contains a templated base class used to implement a basic System.Configuration.ConfigurationSection. The class simply uses an XmlSerializer for the type argument specified and deserializes while validating against an XSD file. It’s extremely easy to use as all you need is an xml serializable class to represent your configuration section. To declare [...]


I so often see numerous projects online that fail to validate input arguments in C#.  Back in the early days of C++ this was not only common, but often required by employers.  What happened?  Did we just become so lazy that we’d rather recieve a null reference exception or index out of range instead of actually [...]


ArgumentList is a command-line program argument parser that exposes named items (i.e. /name=value or -name:value) and unnamed items in an easy to use collection format. I invariably rely on this utility when witting command-line tools. It’s usage is strait-forward, simply construction one with the array of arguments: string[] rawArgs = new string[] { “-x=y”, “noname”, [...]


Way back in 2003 Marc Clifton wrote a series of articles on unit testing, it’s pros and cons and general process.  It is worth a read if your new to the whole thing and just getting started.  If you’ve been writting NUnits (or any other unit test) then you are probable already familiar with most [...]


There can be no worse thing for a project than too many chiefs… to that end remember these words: “It is common sense to take a method and try it; if it fails, admit it frankly and try another. But above all, try something” – Franklin D. Roosevelt   So cheer up, go to work [...]