首页 > 学院 > 开发设计 > 正文

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

2019-11-14 15:58:11
字体:
来源:转载
供稿:网友

配置文件

<?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.VEVb.com/liunlls/p/config.html

第五种

 ConfigurationManager.AppSettings

第六种

 ConfigurationManager.ConnectionStrings

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

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表