I found a really cool logging component today in my search for...a logging component. It's a port of the very popular and useful log4j logging component for Java. It's called log4net oddly enough. It's very well executed, making ingenius use of static members to create more of a logging "environment" than a simple logging component. It's completely configurable on the fly for named hierachy as well as logging levels.
Some of you may ask, "Why do you need a logging component with all the trace functionality built into the framework?" Well, you've got alot of nerve, mister! You'll be happy to know that log4net makes excellent use of these built-in features, as well as adding a whole slew of extensible options. Just go check it out and I'll shut up. It's also licensed with the Apache license so there's no worries about paying anyone for use in a commercial application.
While I'm on a soapbox about delicious open-source/free tools for the CLR, I'll also mention the following tools I use at work:
- NAnt - An open-source build tool based on Java's Ant. I use it exclusively at work since no one will pony up the dough for Visual Studio. I've found I have much more control over my builds.
- NDoc - An amazing documentation creator that uses the xml files created when building with the /doc switch on the C# compiler. The documentation comes out looking just like the framework documentation.
- NUnit - A unit testing framework that was originally based on Java's jUnit, but completely rewritten to take advantage of the CLR's marvelous features.