Here is a quick overview of some of the bigger topics that we covered at the PDC 05 session:
Version Issues When Extending Enterprise Library
Many of the attendants had experience extending Enterprise Library, or rolling Enterprise Library into their own custom framework. One of the challenges that came up had to do with running custom versions of Enterprise Library side by side with other versions of Enterprise Library. For a short term solution some recommended removing the Enterprise Library assemblies from the GAC so that they wouldn't conflict. The longer term solution recommended was to use your own namespace across all Enterprise Library Blocks. Many agreed that this was a reasonably easy task.
Community Contributions, or Lack Thereof
While there have been some great community developed add-ons to Enterprise Library, the number is few especially when compared to the popularity of Enterprise Library. One specific example was the popular Log4Net. With the popularity of both Log4Net and Enterprise Library, why hasn't someone developed a "Log4Net Block"? Good question! One theory was that the culture of Microsoft software is still geared towards Microsoft centric development for new features, not community based features. Another theory was that GotDotNet, which hosts the Enterprise Library project, lacks the tools and usability required to foster good community contributions.
Framework vs. Guidance
There was some interesting discussion around features that are in the .NET Framework vs. features that are in Enterprise Library. Some felt that more of Enterprise Library should be rolled into the base Framework. Others felt that while this makes sense for some features, that others should remain as guidance.
Support?
Some companies are timid to adopt Enterprise Library due to the lack of support from Microsoft. There were responses from a couple of different angles. If you write similar code yourself, you will have to support that code yourself. At least with Enterprise Library you A) don't have to write the code yourself, B) have a community who acts as a support network and C) while not guaranteed, there is still a proven level of support from Microsoft. Another angle was from a vendor or partner standpoint. A company should look into vendors (e.g. Avanade) that offer their own Enterprise Library based framework with enterprise class support agreements.
I hope I accurately covered all of the key issues we discussed. Please comment if you have anything to add.
--
Tim Shakarian
http://www.dotnetjunkies.com/WebLog/tshak/