C#读取配置文件的方法汇总
投稿:hebedich
本文给大家介绍的是使用C#读取配置文件的方法,个人给大家总结了6种,余下的以后再更新,有需要的小伙伴可以参考下。
配置文件
<?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);
第四种
https://www.jb51.net/article/53615.htm
第五种
ConfigurationManager.AppSettings
第六种
ConfigurationManager.ConnectionStrings
当然还有很多......
以上所述就是本文的全部内容了,希望大家能够喜欢。