温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

在web.config或者app.config中如何增加自定义配置节

发布时间:2021-11-23 13:49:23 来源:亿速云 阅读:360 作者:小新 栏目:编程语言

这篇文章主要介绍在web.config或者app.config中如何增加自定义配置节,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

简单键值对

web.config

<configSections>
                                                                                                                            
   <section name="users" type="System.Configuration.NameValueSectionHandler"/>
                                                                                                                             
                                                                                                                             
 </configSections>
 <users  configSource="users.config"></users>

users.config

<users>
  <add key="beijing" value="123"></add>
  <add key="tianjin" value="123"></add>
</users>

c#

NameValueCollection users = System.Configuration.ConfigurationManager.GetSection("users") as NameValueCollection;
            Response.Write(users.Keys[0]+"</br>"+users.Keys[1]);

复杂类型

web.config

<configSections>
                                                                         
<section name="roles" type="EBuy.Chapter3.NTier.WebUI.RolesConfig, EBuy.Chapter3.NTier.WebUI"/>
                                                                         
</configSections>
<roles configSource="roles.config">
  </roles>

roles.config

<roles>
  <add username="beijing" password="123"></add>
  <add username="tianjin" password="123"></add>
</roles>

RolesCofig.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace EBuy.Chapter3.NTier.WebUI
{
    public class RolesConfig : System.Configuration.IConfigurationSectionHandler
    {
        public object Create(object parent, object configContext, System.Xml.XmlNode section)
        {
            return section;
        }
    }
}

c#

XmlNode roles= System.Configuration.ConfigurationManager.GetSection("roles") as XmlNode;
           Response.Write(roles.ChildNodes [0].Attributes["username"].InnerText);

还可以将配置节定义为一个实体

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace EBuy.Chapter3.NTier.WebUI
{
    public class RolesConfig : System.Configuration.IConfigurationSectionHandler
    {
        public object Create(object parent, object configContext, System.Xml.XmlNode section)
        {
            var list=new List<Role>();
            for(int i=0;i<section.ChildNodes.Count;i++)
            {
                list.Add(new Role (){
                    Username =section.ChildNodes[i].Attributes["username"].InnerText ,
                    Password =section.ChildNodes[i].Attributes["password"].InnerText });
            }
            return list;
        }
    }
    public class Role
    {
        public string Username { get; set; }
        public string Password{get;set;}
    }
}
var roles = System.Configuration.ConfigurationManager.GetSection("roles") as List<EBuy.Chapter3.NTier.WebUI.Role >;
          Response.Write(roles.First ().Username);

以上是“在web.config或者app.config中如何增加自定义配置节”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI