Tom Hollander's blog

Head in the clouds

Just Released! Enterprise Library 3.0 - April 2007

Just Released! Enterprise Library 3.0 - April 2007

  • Comments 73

Yes, it's finally here. The patterns & practices team is pleased to announce the official release of Enterprise Library 3.0 - April 2007 for the .NET Framework 2.0 and 3.0.  

Highlights of this Release

If you've been keeping up with the Community Technology Preview releases, there shouldn't be anything too surprising in the final release, although the overall quality should be much higher. All of the major new features have already been described on this blog or in other places, but here is a quick summary of the most significant changes:

  • Validation Application Block. Allows you to centrally define validation rules using configuration or attributes, and easily validate data from anywhere in your application, including deep integration with Windows Forms, ASP.NET and WCF.
  • Policy Injection Application Block. Provides a powerful approach for separating cross-cutting concerns from business logic using declarative policies that are attached at runtime to methods on your objects.
  • Application Block Software Factory. Dramatically simplifies the process of building application blocks and providers through the magic of guidance automation.
  • Visual Studio-integrated Configuration Editor. Edit Enterprise Library configuration files directly within Visual Studio.
  • Environmental Overrides. Use the configuration tool to specify configuration settings that are common or different across multiple environments, and merge this information into configuration files to be deployed with your applications.
  • WCF Integration. Easily integrate the Logging, Exception Handling and Validation Application Blocks into service interfaces built using Windows Communication Foundation.
  • Pre-compiled, strong-named binaries. No need to compile and strong name the code unless you want to manage and evolve the code yourself.

This isn't a complete list, and we've made a number of other minor changes that are described in the documentation. But the good news is that, despite all of the improvements in this release, there are no breaking changes in the core APIs and upgrading existing Enterprise Library 2.0 applications should just be a matter of replacing the DLLs and updating the version numbers in the configuration files.

Credit where it's due

One of the cool things about my job is that I get to play a very public role both during development and after the release of our deliverables. Sometimes this creates the impression that I'm responsible for more than I really am. In reality we have a very talented and dedicated team who are generally too busy working to spend much time in the spotlight. I want to take this opportunity to thank everyone in the team for all of the hard work to make this such a great release:

  • Our Development team: Fernando Simonazzi, Chris Tavares, Olaf Conijn, Adrian Alonso and John Socha-Leialoha
  • Our Test team: Hanz Zhang, Mani Krishnaswami, Sateesh Venkata Surya Nadupalli, Terrence Cyril Joseph Anthuvan, Carlos Farre, Eric Blanchet, Meenakshi Krishnamoorthi, Abhinav Bana, Nalini S and Sharadda Arora
  • Our Documentation team: Roberta Leibovitz, William French, Alex Homer, RoAnn Corbisier and Tina Burden McGrayne
  • Our Program Manager, William Loeffler and Architect, Edward Jezierski

Thanks also to everyone, too numerous to mention here, who provided additional management, reviews, advice and guidance during this project. A particularly special thanks to Dave Hayden for his great work in creating tutorials and supporting the community during the development of this release.

Finally, Enterprise Library 3.0 was of course built on the legacy of several previous releases of Enterprise Library, original p&p application blocks and Avanade's ACA.NET. So thanks to everybody who worked on these earlier deliverables, as Enterprise Library would not be a success if it wasn't for the high quality of these earlier codebases.

And thanks to you too!

As I hope you've noticed, the patterns & practices team is completely dependent on architects and developers in the "real world" to guide us on what we should build, what works well and what doesn't work well. This release of Enterprise Library is a prime example of this, with your input playing a huge role from setting the initial direction to identifying minor issues. Thanks to everyone who played a part in the process, whether it was completing the original prioritization survey, participating in our CodePlex community or providing direct feedback to our team. We really appreciate your support, and we look forward to your continued involvement for our future releases.

  • Fantastic news...congrats to the team!

  • Great news! COngratulations on your release!

  • Greatfull thanks to the team!

    I've learned much from the first version of EntLib

  • Tom, thanks for all the hard work that the patterns & practices team has put into the Enterprise Library.  I've been using the application blocks since the pre-Enterprise Library era, and they have made a lot of things easier and more flexible.

    I've only just downloaded Enterprise Library 3.0 and started through the documentation.  I do have some questions about the precompiled binaries.  It looks like the MSI installs the binaries in C:\Program Files\Microsoft Enterprise Library 3.0 - April 2007\Bin, but it doesn't register them in the GAC.  If I use these binaries, should I assume that I need to create my own setup package to install them, register them in the GAC, install the instrumentation, and provide a shortcut to the configuration console?  It would be nice to see this covered explicitly in the "Deploying the Enterprise Library" section of the help.  Also, the Versioning subtopic still states that "The Enterprise Library installation package does not include compiled assemblies for the application blocks."  This statement is happily no longer true.  :-)

    Thanks again for all the hard work!

    Dan Jagnow

  • Congrats again! I always look forward to news from P&P.

  • Hi Dan -

    Sorry that the documentation on deployment is a little stale. There isn't one "right" way of deploying EntLib with your applications - this is the main reason we don't include an installer that does what you suggest. Different applications may want to use private copies or GAC'ed copies, they may or may not want instrumentation turned on, and they may use only a subset of the assemblies.

    If you do want to deploy and register a single shared copy of EntLib to your server, it should be relatively straightforward to build an MSI that installs the assemblies you need into the GAC and runs the installers in the assemblies.


  • The Enterprise Library 3.0 was finally released to the web today and available for download. One of the

  • Most excellent. I have looked at Enterprise Library in the past, but never quite found a suitable project

  • For all the fans of EntLib (like me), wait no more. The Enterprise Library 3.0 is released !. Read Entlib

  • Enterprise library is finally out. Tom Hollander posts. Can't wait to get my hands on the policy injection...

  • I hope you're enjoying the new release of Enterprise Library ! One of the more interesting inclusions

  • Hey Tom,

    I'm a long time user of EntLib, and have implemented 2.0 for several clients. What is the best way for me to get a handle on the stuff that is net new in the existing blocks for 3.0? I figure the default is to puruse the docs and public interfaces, but I was wondering if this information is consolidated anywhere. I'm looking forward to looking at Policy Injection. I've used in the past to do that kind of thing, and an EntLib version will be fun to explore.

    Thanks for all the work....

  • Hi Frybaby -

    There are some "what's new" topics in the docs and on the MSDN pages (which should be up later today). But the easiest way to get up to speed on the changes is probably to view the webcast ( and download the accompanying slide deck (


  • I've been a huge fan of the Enterprise Library since its start as the Application Blocks. And now version

  • I lived in Chicago for 15 years and we had a saying when it came time to vote for public officials -

Page 2 of 5 (73 items) 12345