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

简介:

简单键值对


web.config


1
2
3
4
5
6
7
< configSections >
                                                                                                                             
    < section  name = "users"  type = "System.Configuration.NameValueSectionHandler" />
                                                                                                                              
                                                                                                                              
  </ configSections >
  < users   configSource = "users.config" ></ users >

users.config

1
2
3
4
< users >
   < add  key = "beijing"  value = "123" ></ add >
   < add  key = "tianjin"  value = "123" ></ add >
</ users >


c#

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


复杂类型

web.config


1
2
3
4
5
6
7
< configSections >
                                                                          
< section  name = "roles"  type = "EBuy.Chapter3.NTier.WebUI.RolesConfig, EBuy.Chapter3.NTier.WebUI" />
                                                                          
</ configSections >
< roles  configSource = "roles.config" >
   </ roles >

roles.config

1
2
3
4
< roles >
   < add  username = "beijing"  password = "123" ></ add >
   < add  username = "tianjin"  password = "123" ></ add >
</ roles >


RolesCofig.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
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#

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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 ;}
     }
}
1
2
var  roles = System.Configuration.ConfigurationManager.GetSection( "roles" as  List<EBuy.Chapter3.NTier.WebUI.Role >;
           Response.Write(roles.First ().Username);




本文转自 virusswb 51CTO博客,原文链接:http://blog.51cto.com/virusswb/1374335,如需转载请自行联系原作者
目录
打赏
0
0
0
0
18
分享
相关文章
苹果app上架-ios上架苹果商店app store 之苹果支付In - App Purchase内购配置-优雅草卓伊凡
苹果app上架-ios上架苹果商店app store 之苹果支付In - App Purchase内购配置-优雅草卓伊凡
48 13
苹果app上架-ios上架苹果商店app store 之苹果支付In - App Purchase内购配置-优雅草卓伊凡
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
85 28
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
|
13天前
|
【04】微信支付商户申请下户到配置完整流程-微信开放平台移动APP应用通过-微信商户继续申请-微信开户函-视频声明-以及对公打款验证-申请+配置完整流程-优雅草卓伊凡
【04】微信支付商户申请下户到配置完整流程-微信开放平台移动APP应用通过-微信商户继续申请-微信开户函-视频声明-以及对公打款验证-申请+配置完整流程-优雅草卓伊凡
68 0
【04】微信支付商户申请下户到配置完整流程-微信开放平台移动APP应用通过-微信商户继续申请-微信开户函-视频声明-以及对公打款验证-申请+配置完整流程-优雅草卓伊凡
|
5月前
|
构建RESTful API已经成为现代Web开发的标准做法之一。Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐。
【10月更文挑战第11天】本文介绍如何使用Spring Boot构建在线图书管理系统的RESTful API。通过创建Spring Boot项目,定义`Book`实体类、`BookRepository`接口和`BookService`服务类,最后实现`BookController`控制器来处理HTTP请求,展示了从基础环境搭建到API测试的完整过程。
95 4
【02】微信支付商户申请下户到配置完整流程-微信开放平台申请APP应用-微信商户支付绑定appid-公众号和小程序分别申请appid-申请+配置完整流程-优雅草卓伊凡
【02】微信支付商户申请下户到配置完整流程-微信开放平台申请APP应用-微信商户支付绑定appid-公众号和小程序分别申请appid-申请+配置完整流程-优雅草卓伊凡
53 3
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
135 12
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
51 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【01】vs-code如何配置flutter环境-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈-供大大的学习提升
【01】vs-code如何配置flutter环境-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈-供大大的学习提升
247 26
uni-app:demo&媒体文件&配置全局的变量(三)
uni-app 是一个使用 Vue.js 构建多平台应用的框架,支持微信小程序、支付宝小程序、H5 和 App 等平台。本文档介绍了 uni-app 的基本用法,包括登录示例、媒体文件处理、全局变量配置和 Vuex 状态管理的实现。通过这些示例,开发者可以快速上手并高效开发多平台应用。
128 0
web项目规范配置(husky、eslint、lint-staged、commit)
通过上述配置,可以确保在Web项目开发过程中自动进行代码质量检查和规范化提交。Husky、ESLint、lint-staged和Commitlint共同作用,使得每次提交代码之前都会自动检查代码风格和语法问题,防止不符合规范的代码进入代码库。这不仅提高了代码质量,还保证了团队协作中的一致性。希望这些配置指南能帮助你建立高效的开发流程。
156 5

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等