C#读取配置文件的几种方式

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: |||超大  

配置文件

<?xmlversion="1.0"encoding="utf-8"?>

<configuration>

<configSections>

<section name="SQLConfiguration"type="ConfigurationDemo.SQLConfiguration,ConfigurationDemo"/>

<section name="AccountConfiguration"type="ConfigurationDemo.AccountConfiguration,ConfigurationDemo"/>

</configSections>

<SQLConfiguration type="MSSQL"connectionString="server=.;integrated security=sspi;database=Northwind"></SQLConfiguration>

<AccountConfiguration>

<users username="liunian"passWord="123456"></users>

</AccountConfiguration>

<system.net>

<mailSettings>

<smtp from="liunian@QQ.com">

<network />

</smtp>

</mailSettings>

</system.net>

</configuration>

第一种

classSQLConfiguration : ConfigurationSection

{

[ConfigurationPRoperty("type", IsRequired =true)]publicstringType

{get{returnthis["type"].ToString(); }set{this["type"] =value; }

}

[ConfigurationProperty("connectionString", IsRequired =true)]publicstringConnectionString

{get{returnthis["connectionString"].ToString(); }set{this["connectionString"] =value; }

}

}

SQLConfiguration sqlConfig = (SQLConfiguration)ConfigurationManager.GetSection("SQLConfiguration");

Console.WriteLine(sqlConfig.Type);

Console.WriteLine(sqlConfig.ConnectionString);

第二种

publicclassAccountConfiguration : ConfigurationSection

{

[ConfigurationProperty("users", IsRequired =true)]publicAccountSectionElement Users

{get{return(AccountSectionElement)this["users"]; }

}

}publicclassAccountSectionElement : ConfigurationElement

{

[ConfigurationProperty("username", IsRequired =true)]publicstringUserName

{get{returnthis["username"].ToString(); }set{this["username"] =value; }

}

[ConfigurationProperty("password", IsRequired =true)]publicstringPassword

{get{returnthis["password"].ToString(); }set{this["password"] =value; }

}

}

AccountConfiguration accountConfig = (AccountConfiguration)ConfigurationManager.GetSection("AccountConfiguration");

Console.WriteLine(accountConfig.Users.UserName);

Console.WriteLine(accountConfig.Users.Password);

第三种

Configuration config =ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

SmtpSection section= config.GetSection("system.net/mailSettings/smtp")asSmtpSection;

Console.WriteLine(section.From);

第四种

http://www.cnblogs.com/liunlls/p/config.html

第五种

ConfigurationManager.AppSettings

第六种

ConfigurationManager.ConnectionStrings

当然还有很多......

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航