首页 / 软件开发 / .NET编程技术 / Enterprise Library Step By Step系列(二) 配置应用程序块 - 进阶篇
Enterprise Library Step By Step系列(二) 配置应用程序块 - 进阶篇2011-01-28 cnblogs terrylee一.响应配置变更通知:Configuration Application Block提供了一个事件机制,当存储的配置变更时通知应用程序 ,使用步骤:1)创建一个EverntHandler1/**//// <summary>
2 /// 创建EventHanler
3 /// </summary>
4 /// <param name="sender"></param>
5 /// <param name="args"></param>
6 private void OnConfigurationChanged(object sender, ConfigurationChangedEventArgs args)
7 {
8 Cursor = System.Windows.Forms.Cursors.WaitCursor;
9
10 EditorFontData configData = ConfigurationManager.GetConfiguration("EditorSettings") as EditorFontData;
11
12 StringBuilder results = new StringBuilder();
13 results.Append("Configuration changes in storage were detected. Updating configuration.");
14 results.Append(Environment.NewLine);
15 results.Append("New configuration settings:");
16 results.Append(Environment.NewLine);
17 results.Append(" ");
18 results.Append(configData.ToString());
19 results.Append(Environment.NewLine);
20
21 Cursor = System.Windows.Forms.Cursors.Arrow;
22 }
2)注册事件1/**////注册事件
2 ConfigurationManager.ConfigurationChanged += new ConfigurationChangedEventHandler(OnConfigurationChanged);
二.配置数据的缓存:Configuration Application Block在设计时提供了对配置数据的缓存,在读取XML数据后,再次读取它首先会判断缓存是否为空,如果不为空,它会直接从缓存中读取数据(在剖析篇中会有详细的介绍)。显式的清除掉缓存用下面这句代码即可:1/**////清除缓存数据
2 ConfigurationManager.ClearSingletonSectionCache();
三.面向高级人员的扩展机制:1. 除了用XML文件可以存储数据外,还可以创建自己的存储方式,像SQL Server Database,注册表存储等,这时就需要我们自己创建StorageProvider。创建自定义的Storage Provider,需要注意以下几点:1)要读取和写入数据,需要继承于StorageProvider类和分别实现IStorageProviderReader和IstorageProviderWriter接口:1public class XmlFileStorageProvider : StorageProvider, IStorageProviderWriter
2 {
3 //……
4 }