What is Microsoft Enterprise Library?

The Microsoft Enterprise Library stands as a set of tools and programming libraries build for the Microsoft .NET Framework and offers an API to facilitate best practices in specific areas of programming including data access, security, logging etc. Developers can use and customize for their own purpose the Enterprise Library as it is provided as a source code.

 

What are the benefits of Microsoft Enterprise Library use?

  • Increased productivity: Any of the App Blocks offers few interfaces meant to satisfy usual app concerns.
  • Configuration Driven Design: Multiple technical decisions about the app behaviour can be delayed until configuration time of the apps. An administrator can configure an extra exception handling policy if an app doesn't handle an exception, instead of adding another exception handler to the code.
  • Enhanced Testability: Numerous application areas may be reconfigured to enhance testing of the app in isolation
 

Application Blocks:

For example the Logging Application Block can be used in the same time in a web smart client or service-oriented app as the Application Blocks in Enterprise Library are designed to be as agnostic as possible to the app architecture.

The patterns and practices team also builds more specialized Application Blocks that are not included in Enterprise Library, like the User Interface Process Application Block, Aggregator Application Block, Updater Application Block and the Composite UI Application Block.

It includes the Web Service Software Factory and Smart Client Software Factory, the patterns and practices team produces a number of other deliverables that leverage Enterprise Library App Blocks.

 

Utilities:

The standard Microsoft distribution of the Enterprise library additionally to the Application Blocks contains:

  • Console Configuration: for adding an Application Block to an apps config.
  • Database Console Security: for supporting the Security Application Block and add profiles, roles and authorization rules.