C#讀取配置文件的方法匯總
配置文件
<?xml version="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>
第一種
class SQLConfiguration : ConfigurationSection { [ConfigurationProperty("type", IsRequired = true)] public string Type { get { return this["type"].ToString(); } set { this["type"] = value; } } [ConfigurationProperty("connectionString", IsRequired = true)] public string ConnectionString { get { return this["connectionString"].ToString(); } set { this["connectionString"] = value; } } }
SQLConfiguration sqlConfig = (SQLConfiguration)ConfigurationManager.GetSection("SQLConfiguration"); Console.WriteLine(sqlConfig.Type); Console.WriteLine(sqlConfig.ConnectionString);
第二種
public class AccountConfiguration : ConfigurationSection { [ConfigurationProperty("users", IsRequired = true)] public AccountSectionElement Users { get { return (AccountSectionElement)this["users"]; } } } public class AccountSectionElement : ConfigurationElement { [ConfigurationProperty("username", IsRequired = true)] public string UserName { get { return this["username"].ToString(); } set { this["username"] = value; } } [ConfigurationProperty("password", IsRequired = true)] public string Password { get { return this["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") as SmtpSection; Console.WriteLine(section.From);
第四種
http://www.dbjr.com.cn/article/53615.htm
第五種
ConfigurationManager.AppSettings
第六種
ConfigurationManager.ConnectionStrings
當(dāng)然還有很多......
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
c# DateTime常用操作實(shí)例(datetime計(jì)算時(shí)間差)
字符串操作DateTime操作,datetime計(jì)算時(shí)間差,取當(dāng)前時(shí)間,更多方法看下面代碼2013-12-12c# 應(yīng)用事務(wù)的簡(jiǎn)單實(shí)例
這篇文章介紹了c# 應(yīng)用事務(wù)的簡(jiǎn)單實(shí)例,有需要的朋友可以參考一下2013-09-09C#使用IronPython庫(kù)調(diào)用Python腳本
這篇文章介紹了C#使用IronPython庫(kù)調(diào)用Python腳本的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06關(guān)于C#繼承的簡(jiǎn)單應(yīng)用代碼分析
在本篇文章里小編給大家整理了一篇關(guān)于C#繼承的簡(jiǎn)單應(yīng)用代碼分析內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2021-05-05C#利用Windows自帶gdi32.dll實(shí)現(xiàn)抓取屏幕功能實(shí)例
這篇文章主要介紹了C#利用Windows自帶gdi32.dll實(shí)現(xiàn)抓取屏幕功能,是C#程序設(shè)計(jì)中常見的一個(gè)重要技巧,需要的朋友可以參考下2014-08-08