2: Introduction to Enterprise Library Integration Pack for Windows Azure
The Microsoft® Enterprise Library Integration Pack for Windows Azure extends Enterprise Library to include support for Windows Azure™ technology platform applications. It includes additional application blocks to meet the requirements of cloud-hosted applications.
What Is Enterprise Library?
Enterprise Library provides many highly configurable features that make it much easier for you to manage the repetitive tasks, known as crosscutting concerns, which occur in many places in your applications. These tasks include logging, validation, caching, exception management, and more. In addition, the dependency injection container provided by Enterprise Library can help you to simplify and decouple your designs, make them more testable and understandable, and help you to produce more efficient designs and implementations of all kinds of applications.
Enterprise Library consists of a collection of application blocks and a core infrastructure. All of these are reusable software components designed to assist developers with common enterprise development challenges. Each application block is designed to address a specific set of concerns. For example, the Logging Application Block simplifies the implementation of common logging functions in your application and enables you to write logging information to a variety of locations; the Data Access Application Block simplifies the development of common data access tasks such as reading data for display in a UI or submitting changed data back to the underlying database system.
As shown in Figure 1, the application blocks in Enterprise Library are:
- The Caching Application Block. You can use this application block to incorporate a local cache into your applications.
- The Cryptography Application Block. This application block can be used to incorporate hashing and symmetric encryption into your applications.
- The Data Access Application Block. Use this application block to incorporate standard database functionality into your applications.
- The Exception Handling Application Block. Developers and policy makers can use this application block to create a consistent strategy for processing exceptions that occur throughout the architectural layers of enterprise applications.
- The Logging Application Block. Developers can use this application block to include standard logging functionality in their applications and systems administrators can use the configuration tool to adjust the granularity of logging at run time.
- The Policy Injection Application Block. This block contains legacy code for backwards compatibility with existing applications. The new functionality is available by using the Unity interception mechanism and call handlers located in the related application block assemblies.
- The Security Application Block. Developers can use this application block to incorporate authorization and security caching functionality into their applications.
- The Validation Application Block. Developers can use this application block to create validation rules for business objects that can be used across different layers of their applications.
- Unity Dependency Injection and Interception. Developers can use these techniques to implement a lightweight, extensible dependency injection container with support for constructor, property, and method call injection, and to capture calls to target objects and add additional functionality to the object.
Enterprise Library is configuration-driven and supports both programmatic and external configuration. As well as the application blocks, Enterprise Library contains configuration tools, plus a set of core functions that manage tasks applicable to all of the blocks.
The goals of Enterprise Library are the following:
- Consistency. All Enterprise Library application blocks feature consistent design patterns and implementation approaches.
- Extensibility. All application blocks include defined extensibility points that allow developers to customize the behavior of the blocks by adding their own code.
- Ease of use. Enterprise Library offers numerous usability benefits, including a graphical configuration tool, a simple installation procedure, and clear and complete documentation and samples.
- Integration. Enterprise Library application blocks are designed to work well together and are tested to make sure that they do. However, you do not have to use them together.
To learn more about Enterprise Library and the application blocks, visit the main Enterprise Library site on MSDN® at Enterprise Library 5.0 – May 2011.
What Is the Enterprise Library Integration Pack for Windows Azure?
The Enterprise Library Integration Pack for Windows Azure extends Enterprise Library 5.0 to add additional support for developing and managing Windows Azure applications. It shares the same benefits as the Enterprise Library and helps developers achieve the same goals.
The Enterprise Library Integration Pack for Windows Azure includes:
- The Autoscaling Application Block to help you to automatically scale your Windows Azure applications.
- The Transient Fault Handling Application Block to help you make your Windows Azure applications more resilient when they encounter transient fault conditions.
- The Blob configuration source to store your Enterprise Library configuration in Azure blob storage.
- A protected configuration provider.
- Windows PowerShell® command line interface cmdlets to manipulate the Autoscaling Application Block.
- Updated database creation scripts (for the Logging Application Block and Caching Application Block) to use SQL Azure™ technology platform.
- Reference documentation.
- A developer's guide.
- A reference implementation that illustrates the use of the new application blocks.
The Enterprise Library Integration Pack for Windows Azure is one of several existing and planned integration packs for Enterprise Library.
For more information about the Silverlight Integration Pack for use with Microsoft Silverlight® browser plug-in applications, see Enterprise Library 5.0 Silverlight Integration Pack.
For more information about the Enterprise Library application blocks, see the following resources on MSDN:
- Microsoft Enterprise Library 5.0 – May 2011:
- Developer's Guide:
- Enterprise Library 5.0 Silverlight Integration Pack:
- The Caching Application Block:
- The Cryptography Application Block:
- The Data Access Application Block:
- The Exception Handling Application Block:
- The Logging Application Block:
- The Policy Injection Application Block:
- The Security Application Block:
- The Validation Application Block:
- Unity Dependency Injection and Interception:
For more information about the Autoscaling Application Block, see "The Autoscaling Application Block" on MSDN:
For more information about the Transient Fault Handling Application Block, see "The Transient Fault Handling Application Block" on MSDN:
Last built: June 7, 2012