Microsoft Enterprise Library Article Index for
Microsoft
Website Links For
Microsoft
 

Information About

Microsoft Enterprise Library





BENEFITS

  • Improved Productivity: Each of the Application Blocks provides several interfaces meant to satisfy common application concerns.

  • Configuration Driven Design: Many technical decisions about the application behaviour can be delayed until configuration time of the application. For instance, if an application does not properly handle an exception, instead of adding another exception handler to the code, an administrator can configure an additional exception handling policy.

  • Improved Testability: Many application areas can be reconfigured to improve testing of the application in isolation.



APPLICATION BLOCKS

The Application Blocks in Enterprise Library are designed to be as agnostic as possible to the application architecture, for example the Logging Application Block may be used equally in a web, Smart Client or Service-oriented Application . The patterns and practices team also produces more specialized Application Blocks that are not included in Enterprise Library, such as the User Interface Process Application Block, Aggregator Application Block, Updater Application Block and the Composite UI Application Block .

The patterns and practices team produces a number of other deliverables that leverage Enterprise Library Application Blocks. These include the Web Service Software Factory and Smart Client Software Factory .


UTILITIES

In addition to the Application Blocks, the standard Microsoft distribution of the Enterprise library includes:
  • Configuration Console: to visually add Application Block to an applications configuration.

  • Security Database Console: to add roles, profiles and authorization rules to support the Security Application Block.



HISTORY

There have been several versions of the Microsoft Enterprise Library:

  • Enterprise Library 1.0 (January 2005)

  • Enterprise Library 1.1 (June 2005)

  • Enterprise Library 2.0 (January 2006)

  • Enterprise Library 3.0 (April 2007)

  • Enterprise Library 3.1 (May 2007)




Version 1.0

The first release of Enterprise Library was created by Avanade, Inc. , a joint venture between Microsoft and Accenture . It merged many of the capabilities of older, standalone Application Blocks with Avanade's ACA.NET development framework. A portion of the Avanade Connected Architecture for .NET (ACA.NET) was licensed to Microsoft, and a joint Avanade-Microsoft development team combined this code with earlier Microsoft Application Blocks to create the first release of Microsoft Enterprise Library. Today ACA.NET is built on top of Enterprise Library, and not only facilitates much more than configuration driven design, but also enables a framework for Aspect-oriented Programming .


Version 1.1

Two releases of Enterprise Library were released for .NET Framework 1.1. The first was released in January 2005, followed by a minor maintenance release in June 2005. The .NET 1.1 releases of Enteprise Library contained the following Application Blocks:
  • Caching

  • Configuration

  • Cryptography

  • Data Access

  • Exception Handling

  • Logging and Instrumentation

  • Security



Version 2.0

In January 2006, a new version of Enterprise Library was released that targeted .NET Framework 2.0. The most significant change in this release was that the Configuration Application Block was removed, and the blocks were updated to use .NET's improved System.Configuration capabilities. This release also included significant improvements to the Logging Application Block, and much of the Security Application Block was removed due to similar capabiltiies provided in .NET Framework 2.0. The .NET 2.0 release of Enteprise Library contained the following Application Blocks:
  • Caching

  • Data Access

  • Cryptography

  • Exception Handling

  • Logging

  • Security



Version 3.0

In April 2007, Enterprise Library 3.0 was released. It contains new Application Blocks, a new Application Block Software Factory designed to simplify the development of new Application Blocks and extensions, and new features providing better integration with .NET Framework 3.0. The 3.0 release of Enterprise Library contains the following Application Blocks:
  • Caching

  • Data Access

  • Cryptography

  • Exception Handling

  • Logging

  • Policy Injection

  • Security

  • Validation


In May 2007, version 3.1 was released with minor enhancements.


FUTURE

Ron Jacobs, a Microsoft Evangelist, described the purpose of Enterprise Library as "filling in the gaps" of .NET development between releases of the framework. As the framework continues to advance, developers are demanding more productive development libraries.

While Microsoft continues to promote Enterprise Library for "Enterprise Development", and even many projects within Microsoft IT use it, there is little integration of the .NET Framework and the Enterprise Library.


SEE ALSO



REFERENCES AND EXTERNAL LINKS