It has been a long time since I upgraded this library, and the .NET development world has shifted a bit in that time. One of the key changes is the move to Portable Class Libraries, and Caliburn.Micro is one the libraries making that change. I have decided to follow suit and make the core Caliburn.Micro.Logging library portable. This, of course, has creating some significant breaking changes, so please look over the changes list below.
Sometimes time flies way too fast. It has been seven months since I last updated my Caliburn.Micro logging frameworks and nearly a month since Caliburn.Micro has been upgraded. Well, I have finally caught up and upgraded the logging libraries. Caliburn.Micro.Logging, Caliburn.Micro.Logging.NLog, and Caliburn.Micro.Logging.log4net are now version 1.5 and available on NuGet. Version Changes Upgraded Caliburn.Micro to 1.4 Upgraded solution / project files to VS2012 Added support for Windows Phone 8 Split Caliburn.
I just released an update for Caliburn.Micro.Logging, Caliburn.Micro.Logging.NLog, and Caliburn.Micro.Logging.log4net. All three are now at version 1.2.1, and are available on NuGet. This is a just a minor patch release with the version notes below. Please see the following posts for usage: Introducing Caliburn.Micro.Logging Introducing Caliburn.Micro.Logging.NLog Introducing Caliburn.Micro.Logging.log4net Version Notes Upgraded .NET 4 and Silverlight 4 versions to Caliburn.Micro 1.2.0 Created a psake build script to be used in Continuous Integration Moved samples into their own solution
Continuing my current mission to NuGet-ify my current utility libraries, and building on my Introducing Caliburn.Micro.Logging post, I have now released Caliburn.Micro.Logging.NLog which integrates log4net into Caliburn.Micro. There were no code changes to this from the code in my earlier post How To Do Logging with Caliburn.Micro, so it should be very easy to migrate to the NuGet package. How to Use Caliburn.Micro.Logging.NLog Using NuGet for Caliburn.Micro.Logging.NLog The NuGet package id is Caliburn.
Caliburn.Micro Logging Abstraction This post covers logging. Caliburn.Micro has a simple logging abstraction that consists of an ILog interface, and a LogManager class (see below). To add logging to any Caliburn.Micro project, you need to implement a class that extends the ILog interface, and you need to replace the delegate for GetLog. In this post, I will show you how to hook up a debug logger that logs to the Output window in Visual Studio, a log4net logger, and an NLog logger.