人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

自定義設置節處理完成個性化web.config

自定義設置節處理完成個性化web.config

更新時間:2022-06-05 文章作者:未知 信息來源:網絡 閱讀次數:

通過System.Configuration中的ConfigurationSettings類的AppSettings屬性,可以很方便訪問web.config配置文件中appSettings節點的數據。對于web程序利用這個配置文件存放一些只讀的程序信息,比如程序名稱,作者信息,數據庫連接字符串等將是十分方便有用。如:

<!--Sample.aspx-->
private void Page_Load(object sender, System.EventArgs e)
{
this.tbName = ConfigurationSettings.AppSettings[“AppName“];
}

<!--web.config-->
<configuration>
<appSettings>
<add key="AppName" value="MyApplication" />
</appSettings>
... ...

對于ConfigurationSettings類有個方法GetConfig(string sectionName)可以訪問任何配置元素,對于以上例子,可如此使用:

<!--Sample.aspx-->
private void Page_Load(object sender, System.EventArgs e)
{
object settings = ConfigurationSettings.GetConfig(“appSettings“);
NameValueCollection nvc = settings as NameValueCollection;
if (nvc != null)
{
string val = (string)nvc[“AppName“];
this.tbName = val;
}
}

可見GetConfig()方法返回了一個配置處理的對象,轉換成NameValueCollection的實例后,可以訪問到該section內的內容了。其實對于配置文件檢索有背后的處理程序實現,同時我們可以看到在web.config,或machine.config中看到對于處理程序的聲明,如:

<!--web.config-->
<configuration>
<configSections>
<section name="mySection"
type="Chagel.Configration.Settings, Configuration" />
</configSections>
<mySection>
<AppName> MyApplication</AppName>
</mySection>
... ...

以上聲明了一個mySection元素,并在configSections中聲明了該配置的處理程序類名為Chagel.Configration.Settings,Configuration為程序集名稱。接下來我們可以通過一個實現System.Configuration.IConfigurationSectionHandler接口的類來處理該配置元素,如:

<!--Settings.cs-->
using Chagel.Configration.Data;
namespace Chagel.Configration
{
public class Settings:IConfigurationSectionHandler
{ //實現該接口的Create方法
public object Create(object parent, object input, XmlNode node)
{
Data data = new Data();

foreach(XmlNode xn in node.ChildNodes)
{
switch(xn.Name)
{
case("appName"):
data.AppName = xn.InnerText;
break;
case("appVer"):
data.AppVer = xn.InnerText;
break;
... ...
}//switch end

}//foreach end

return data;

}//method end
}
}

IConfigurationSectionHandler 接口只有一種方法,每當發現注冊到處理程序的配置節時,都會在節處理程序上調用 Create 方法,我們實現的類返回一個Data類的實例,該類是一個專門的數據集,代碼如下:

<!--Data.cs-->
namespace Chagel.Configration.Data
{
public class Data
{
public Data()
{
}
public string AppName;//程序名稱
public string AppVer;//程序版本
public string AppAuthor;//程序作者
... ...
}
}

至此,現在可以讀取配置元素值了,如:

<!--Sample1.aspx-->
private void Page_Load(object sender, System.EventArgs e)
{
Data data;
data = ConfigurationSettings.GetConfig("mySection") as Data;
this.tbName.Text = data.AppName;
}

到此我們通過實現一個類支持 IConfigurationSectionHandler 接口來對自定義節進行處理,完成對自定義節的讀取。當然我們仍可以直接聲明系統的處理程序(System.Configuration.NameValueFileSectionHandler)重用與appSettings一樣的類。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 汨罗市| 武汉市| 公主岭市| 绵阳市| 仁寿县| 札达县| 揭东县| 托克托县| 江油市| 大厂| 武川县| 库伦旗| 中方县| 庆云县| 达日县| 渝中区| 定州市| 中卫市| 双桥区| 沂水县| 温宿县| 双牌县| 铜山县| 册亨县| 肃宁县| 莎车县| 古浪县| 金华市| 理塘县| 恩平市| 定日县| 沙坪坝区| 盐池县| 彭水| 凉城县| 尉犁县| 合川市| 都江堰市| 姚安县| 布拖县| 涪陵区|