天天看點

Enterprise Library——企業庫配置管理應用程式塊

Enterprise Library——企業庫配置管理應用程式塊

定義配置資料

Enterprise Library——企業庫配置管理應用程式塊

編寫一個類,定義配置資料

Enterprise Library——企業庫配置管理應用程式塊

1.必須是可以序列化的(XmlSerializer)

Enterprise Library——企業庫配置管理應用程式塊

2.可以任意複雜

Enterprise Library——企業庫配置管理應用程式塊

配置區和中繼資料

Enterprise Library——企業庫配置管理應用程式塊

configuration settings are grouuped together in configuration sections

Enterprise Library——企業庫配置管理應用程式塊

對于每個配置區,設定一個storage provider和一個transformer

Enterprise Library——企業庫配置管理應用程式塊

配置中繼資料(metadata)儲存再應用程式域的配置檔案中 app.config或者 web.config

Enterprise Library——企業庫配置管理應用程式塊

配置圓熟據是用來确定使用什麼storage provider和transformer,來讀取配置區資料

Enterprise Library——企業庫配置管理應用程式塊

聲明一個配置區 這是一個主配置檔案

Enterprise Library——企業庫配置管理應用程式塊

<configuration>

Enterprise Library——企業庫配置管理應用程式塊

  <configurationSections> //配置區

Enterprise Library——企業庫配置管理應用程式塊

     <confiturationSection name = "SalesData" encypt = "false"> //SalesData是配置資料,encypt是否加密

Enterprise Library——企業庫配置管理應用程式塊

       <storageProvider xsi:type="XmlFileStorageProviderData" name="XML File Storage Provider" path="salesdata.config"/>是可以寫讀存儲的 配置檔案的名字是salesdata.config

Enterprise Library——企業庫配置管理應用程式塊

       <data Transformer xsi:type="XmlSerializerTransformerData" name="Xml Serializer Transformer">//怎麼把内部的結構轉化為xml格式

Enterprise Library——企業庫配置管理應用程式塊

       <includeTypes/>

Enterprise Library——企業庫配置管理應用程式塊

       </data Transformer>

Enterprise Library——企業庫配置管理應用程式塊

     </confiturationSection>

Enterprise Library——企業庫配置管理應用程式塊

  </configurationSections>

Enterprise Library——企業庫配置管理應用程式塊

</configuration>

Enterprise Library——企業庫配置管理應用程式塊

也可以通過Configuration Console 工具配置

Enterprise Library——企業庫配置管理應用程式塊
Enterprise Library——企業庫配置管理應用程式塊

寫配置資訊 調用api寫

Enterprise Library——企業庫配置管理應用程式塊

整個配置區被覆寫(無合并) 元配置檔案必須包含改配置區的定義

Enterprise Library——企業庫配置管理應用程式塊

例子

Enterprise Library——企業庫配置管理應用程式塊

 string servername = "myserver";

Enterprise Library——企業庫配置管理應用程式塊

ConfigurationManager.WriteCofiguration("salesData",servername);

Enterprise Library——企業庫配置管理應用程式塊

讀配置資料

Enterprise Library——企業庫配置管理應用程式塊

Storage prsvider and transformer 負責傳回期望的對象類型

Enterprise Library——企業庫配置管理應用程式塊

XML Serializer Transformer 将XmlNodes 放序列化為對象

Enterprise Library——企業庫配置管理應用程式塊
Enterprise Library——企業庫配置管理應用程式塊

string constring;讀字元串

Enterprise Library——企業庫配置管理應用程式塊

constring =DirectCast(configurationManager.GetConfiguration(“connectionstring”,String));

Enterprise Library——企業庫配置管理應用程式塊

EditorFontData configData;讀對象

Enterprise Library——企業庫配置管理應用程式塊

configData=DirectCast(configurationManager.GetConfiguration("EditouSettings"),EditorFontData);

配置資料的緩存

當storage provider 檢測到配置的更改,緩存被清零 

使用接口ConfigurationManager.GetConfiguration()來擷取配置 

不需要再别的地方緩存配置資訊了

本文轉自高海東部落格園部落格,原文連結:http://www.cnblogs.com/ghd258/archive/2005/10/26/262270.html,如需轉載請自行聯系原作者