由于找不到更好的中文字来说明Provider,所以只好用了扩展器这个名字,大家见谅。来看一下配置应用程序块中的Providers结构图:

IConfigurationProvider 接口是所有的Providers必须实现的,以便配置应用程序块能够创建和初始化它们。该接口中有一个方法Initialize()和一个属性ConfigurationName,配置应用程序块调用Initialize()方法来创建每一个Providers。
配置应用程序块中包含了一个抽象的基类ConfigurationProvider。它实现了IConfigurationProvider 接口中的ConfigurationName属性。
配置应用程序块中的Factories结构图:

ConfigurationFactory是一个抽象的基类,它定义了应用程序块中所有的工厂类的接口,所有的Factory类必须从它继承。ProviderFactory类实现了IConfigurationProvider并从ConfigurationFactory类继承,也是一个抽象类。
总结
好了,这里引用MSDN上的一句话来结束这篇Post,“设计了配置应用程序块,您就可以用最适合应用程序要求的方式将配置数据存储在应用程序中,使您不受存储方法的限制”。