web.config自定义配置节点,将多个节点合并
web.config自定义配置节点,将多个节点合并一、在web.config文件中,用得比较多的就是appSettings节点下配
1、例如:
2、读取这些配置信息的方法
ConfigurationManager.AppSettings[“OAuth_QQ_ClientId”];
ConfigurationManager.AppSettings[“OAuth_QQ_CallbackUrl”];
ConfigurationManager.AppSettings[“OAuth_QQ_ClientScrert”];
ConfigurationManager.AppSettings[“OAuth_Sina_ClientId”];
ConfigurationManager.AppSettings[“OAuth_Sina_ClientScrert”];
ConfigurationManager.AppSettings[“OAuth_Sina_CallbackUrl”];
........
3、缺点:配置信息多时,管理不方便
二、使用web.config自定义配置节点,将功能类似的配置信息,归类统一,例如
1、在 <configSections> 节点下,添加一个名为 customCon 的 <section>节点
2、在 <configuration> 节点下,添加一个customCon 自定义的节点,与上面的 name 名称相同
<!--自定义配置-->
<customCon>
<!--邮件配置-->
<mail mailPwd="" mailHost="" mailFrom="" />
<!--QQ登陆-->
<oAuthQQ OAuth_QQ_ClientId="ee" OAuth_QQ_ClientScrert="" OAuth_QQ_CallbackUrl="http://www.studyofnet.com" />
<!--新浪登录-->
<oAuthSina OAuth_Sina_ClientId="" OAuth_Sina_ClientScrert="" OAuth_Sina_CallbackUrl="http://m.studyofnet.com" />
</customCon>
3、在 Studyofnet.Com.Common 命名空间下,添加一个 CustomCon类 (注意:需要继承ConfigurationSection)
/// <summary>
/// 自定义配置
/// </summary>
public class CustomCon : ConfigurationSection
{
/// <summary>
/// 邮箱设置
/// </summary>
[ConfigurationProperty("mail", IsRequired = true)]
public MailElement Mail
{
get { return (MailElement)this["mail"]; }
}
/// <summary>
/// qq登录
/// </summary>
[ConfigurationProperty("oAuthQQ", IsRequired = true)]
public OAuthQQElement OAuthQQ
{
get { return (OAuthQQElement)this["oAuthQQ"]; }
}
/// <summary>
/// 新浪登录
/// </summary>
[ConfigurationProperty("oAuthSina", IsRequired = true)]
public OAuthSinaElement OAuthSina
{
get { return (OAuthSinaElement)this["oAuthSina"]; }
}
}
4、继续添加 MailElement、OAuthQQElement、OAuthSinaElement 类的定义,里面分别是 mail标签、oAuthQQ标签、oAuthSina标签 的属性
MailElement(邮箱)
OAuthQQElement(QQ)