This chapter covered the design concepts that make up the Configuration Application Block. A primary design goal for the Configuration Application Block is to allow an application to be decoupled from the form and location of the configuration data that it uses. A major part of this chapter focused on how StorageProviders and Transformers can be used to accomplish this goal. It also detailed how new StorageProviders and Transformers can be created to extend Enterprise Library's Configuration Application Block should the need arise. Another design goal was to make developing against the Configuration Application Block very straightforward. That is the reason why a façade exists with static methods for getting and writing configuration data. And if the StorageProviders and Transformers that ship with the Configuration Application Block are sufficient for the needs of an application, then a developer may never even need to know that they exist. The configuration of StorageProviders and Transformers is more of an administrative detail than it is a development detail. The overarching point that you should now understand is that you don't need to be involved with storing and retrieving configuration information for an application and where or how the configuration data gets saved and retrieved. Instead, this lets you concentrate on developing a solution to the business needs at hand. Furthermore, the code for the application is isolated from changes if configuration data is moved from one store to another. Rather than modifying any code, only metaconfiguration data needs to be changed. |