Enterprise Library 6.0

I’ve written on my blog before about the Microsoft Enterprise Library.  Enterprise Library has a long and accomplished history of providing architectural guidance, recommended practices, and reusable components to help developers, architects, and IT professionals efficiently build line-of-business (LOB) systems. Over the years, it's achieved a significant reach, seeing over 4 million downloads and powering many industrial systems.

I’m excited to share that the patterns & practices team has just released Enterprise Library 6.0. This new version not only includes new reusable components (called “application blocks”), but also extends the library’s integration with other technologies (such as with ASP.NET MVC and ASP.NET Web API) and simplifies its learning and usage.

While this 6.0 release is filled with great things to talk about, I want to highlight three in particular:

  • .NET 4.5 saw the introduction of the EventSource class, which dramatically simplifies the task of doing ETW tracing in managed applications (ETW, or Event Tracing for Windows, is a fast and scalable logging mechanism built into the Windows operating system).  Enterprise Library 6.0 includes the new Semantic Logging Application Block, which enables you to have the simplicity and power of EventSource while still utilizing log formats and storage facilities you’re familiar with.  With this block, you can easily direct your log messages to a variety of destinations, such as rolling flat files, SQL Server databases, or Windows Azure table storage, while still maintaining the structured nature that ETW and EventSource provide.  This structure makes it much easier to later aggregate, query, and process the information you've captured.
  • LOB apps are more and more likely to be running in distributed environments, where intermittent error conditions are not uncommon.  The updated Transient Fault Handling Application Block, which helps to provide resilience against such conditions, has been updated with new detection strategies and with support for the new asynchronous programming features of C# 5 and Visual Basic 11, enabling increased scalability.  It’s also now available as a portable library for use with .NET 4.5, Windows Store apps, and Windows Phone apps.
  • Previous releases of Enterprise Library have included Unity, a lightweight and extensible dependency injection container that facilitates building loosely coupled applications.  With this release, it’s seen several important enhancements, including support for Windows Store apps.

As has been the case with Enterprise Library in the past, you can easily add to your projects just the blocks you need by using the NuGet package manager in Visual Studio:

You can check out the Enterprise Library at https://entlib.codeplex.com.

Namaste!

Follow me on Twitter at https://twitter.com/ssomasegar.