.net ConfigurationSectionDesigner插件使用
最近接触了vs2010的一款插件:ConfigurationSectionDesigner。ConfigurationSectionDesigner是一个图型化设计.net的配置块和自动生成需要代码和schema定义的codeplex上的一个开源项目,现在分享出来,希望对大家有所帮助。
.Net配置体系中可以是一个Section一个模块。本示例有2个配置块组成,并通过Section整合到.net的默认配置文件App.config里面,用configSource属性分2个外部配置文件分别配置。实现配置文件分模块、分类展示,使用起来也很方便。
首先你要确保你的vs安装了ConfigurationSectionDesigner插件,如果没有,下载安装即可。http://csd.codeplex.com/releases
一:新建一个wpf工程文件,首先Add New Item,找到刚才安装的插件自带的模版,命名为MyConfig.csd。然后建立配置项模型,在新建的.csd文件左边的Tollbox中有相关的控件,首先拖一个ConfigurationSection命名为MyConfig,分别新增三个Attribute,在属性页分别选择Attribute的Type,再新增两个Element(SystemConfig、MainFrameService),对于SystemConfig,要拖一个ConfigurationElement命名为SystemConfigElement,并新增三个对应的Attribute,同时选择对应的Type,然后把上面SystemConfig的Type指定为SystemConfigElement,这样就关联在一起了,同时出现一个指向的箭头。然后就是MainFrameService了,该节点时一个集合,所以要拖一个ConfigurationElementCollection命名为MainFrameServiceCollection,再拖一个ConfigurationElement命名为Service,同时新增对应的Attribute和指定对应的Type.这样把MainFrameService的Type指定为MainFrameServiceCollection,MainFrameServiceCollection的Item Type指定为Service。配置模型就建立成功了,如下图,保存时,会生成对应的配置项代码。
同样,再插入一个模板,命名为MyConfig2.csd,如下图:
至此,配置模型就建立好了。
二:通过以上工作,我们建立了配置的基本结构,下面是配置的实现结果,如下:
myConfig.config:
<?xml version="1.0" encoding="utf-8" ?> <!--<configuration><configSections><section name="myConfig2" type="WpfApplication4.MyConfig2, WpfApplication4"/></configSections>--><myConfig xmlns="urn:WpfApplication4" localIPV4Scope="110.0" tcpCommTimeout="60" description="abcdefg"><systemConfig encoding="UTF-8" output="C:\" style="江南大叔"/><mainFrameService><service name="n1" channel="c1" server="10.112.40.241" servicetype="t1"/><service name="n2" channel="c2" server="10.112.40.242" servicetype="t2"/><service name="n3" channel="c3" server="10.112.40.243" servicetype="t3"/><service name="n4" channel="c4" server="10.112.40.244" servicetype="t4"/></mainFrameService></myConfig> <!--</configuration>-->
myConfig2.config:
<?xml version="1.0" encoding="utf-8" ?> <!--<configuration><configSections><section name="myConfig2" type="WpfApplication4.MyConfig2, WpfApplication4"/></configSections>--><myConfig2 xmlns="urn:WpfApplication4"><hW><hW hello="h1" word="true"/><hW hello="h2" word="false"/><hW hello="h3" word="true"/></hW></myConfig2> <!--</configuration>-->
App.config:
<?xml version="1.0" encoding="utf-8" ?> <configuration><configSections><section name="myConfig" type="WpfApplication4.MyConfig, WpfApplication4"/><section name="myConfig2" type="WpfApplication4.MyConfig2, WpfApplication4"/></configSections><myConfig configSource="Configs\myConfig.config"/><myConfig2 configSource="Configs\myConfig2.config"/> </configuration>
三:这样就算配置模块很多,config文件中也显得很清晰,使用也很方便:
var a = MyConfig.Instance.LocalIPV4Scope;var b = MyConfig.Instance.SystemConfig.Encoding;var ss = MyConfig.Instance.MainFrameService;foreach (Service s in ss){string a1 = s.Name;string a2 = s.Channel;string a3 = s.Server;string a4 = s.Servicetype;}//---------------------------------------------var mm = MyConfig2.Instance.HW;foreach (HW m in mm){string a1 = m.Hello;bool a2 = m.Word;}
ps:参考http://www.cnblogs.com/bhtx/archive/2013/03/30/2990242.html
转载于:https://www.cnblogs.com/yuanli/archive/2013/05/19/3086917.html
.net ConfigurationSectionDesigner插件使用相关推荐
- 阅读分析程序源代码的一些方法(转载整理)
前言 最近项目组中有较多新成员需要阅读熟悉项目中已有的程序代码,好多成员一时间对项目代码摸不清头绪,这里在网络上收集了相关源代码阅读分析的一些方法,整理于此. 正文 摘自(繁体中文Traditiona ...
- Alibaba代码规范插件、FindBugs插件安装及详解,IDEA插件安装,代码规范,代码查错,代码格式规范
这是帮助开发者规范代码,培养优良的编码习惯的两个IDEA插件
- IDEA的Docker插件实战(Dockerfile篇)
IDEA的Docker插件实战(Dockerfile篇) IntelliJ IDEA的Docker插件能帮助我们将当前工程制作成Docker镜像.运行在指定的远程机器上,是学习和开发阶段的好帮手,本文 ...
- IDEA集成Docker插件实现一键自动打包部署微服务项目
一. 前言 大家在自己玩微服务项目的时候,动辄十几个服务,每次修改逐一部署繁琐不说也会浪费越来越多时间,所以本篇整理通过一次性配置实现一键部署微服务,实现真正所谓的一劳永逸. 二. 配置服务器 1. ...
- vue-devTools插件安装流程
vue-devTools插件安装流程 本文主要介绍 vue的调试工具 vue-devtools 的安装和使用 工欲善其事, 必先利其器, 快快一起来用vue-devtools来调试开发你的vue项目吧 ...
- VS Code 安装 Go 插件、自定义扩展配置、断点调试
1. 安装插件 使用快捷键 Ctrl+Shift+X 打开插件安装页面,安装 Go 插件. 2. 自定义扩展配置 使用快捷键 Ctrl+, 打开自定义配置页,编辑 settings.json ,定义与 ...
- VS Code 安装插件、自定义模板、自定义配置参数、自定义主题、配置参数说明、常用的扩展插件
1. 下载和官网教程 下载地址:https://code.visualstudio.com/ 官方教程:https://code.visualstudio.com/docs 2. 安装插件 安装扩展插 ...
- VS Code 离线安装插件方法
本文以离线安装 C/C++ 插件为例进说明,其它语言的插件的离线安装方法类似. 离线安装 C/C++ 插件相对比较麻烦一些,主要是因为 C/C++ 插件还依赖其他需要在线下载的组件: C/C++ la ...
- windows安装MongoDB环境以及在pycharm中配置可视化插件
安装MongoDB数据库 参考这里 安装PyMongo python3 -m pip3 install pymongo指定版本 python3 -m pip3 install pymongo==3.5 ...
最新文章
- python创建不可变集合_python不可变集合是什么
- C++string容器-构造函数
- xpath-helper: 谷歌浏览器安装xpath helper 插件
- java asm jndi_GitHub - Q1ngShan/JNDI: JNDI 注入利用工具
- leetcode —— 面试题67. 把字符串转换成整数
- FFT变换频谱图中频率刻度的设置方法
- php不使用插件导出excel
- Grunt中批量无损压缩图片插件--grunt-sprite
- ssm电影院订票系统 前端layui
- JAVA高端编程研发培训班 JAVA开发视频教程
- gpgga格式读取MATLAB,GPS协议GGA、GLL、GSA、GSV、RMC、VTG解释
- win7 双屏 双工具栏_Win7双屏复制/双屏扩展设置教程
- 网银汇款提示服务器无响应,为什么我的网上银行支付页面总是未响应
- 计算机无法安装MUMU模拟器,电脑手机模拟器,详细教您电脑手机模拟器MuMu模拟器怎么使用...
- 我奋斗了18年,不是为了和你一起喝咖啡
- php网页 背景图片,HTML怎么设置网页背景图
- Windows7 内部版本7601 此Windows副本不是正版解决办法
- 静态网站全站搜索功能
- 手机无线连接到电脑共享文件
- android中评论的删除不了,微信朋友圈可以删评论了,但尴尬的是…
热门文章
- 端口映射问题:Bad Request This combination of host and port requires TLS.
- Reject: HTTP ‘DELETE‘ is not allowed, Not injecting HSTS.....DELETE请求PUT请求跨域问题
- Go 学习笔记(78)— Go 标准库 net/http 创建服务端(接收 GET、POST 请求)
- Go 学习笔记(61)— Go 高阶函数、函数作为一等公民(函数作为输入参数、返回值、变量)的写法
- 路由器远程登陆配置:02多人登陆一台设备
- 【微服务架构】SpringCloud使用Ribbon实现负载均衡
- 特斯拉“纯视觉路线”能去掉ISP吗?
- git clean和git reset结合用法
- 服务器显示内存已超标,服务器显示内存已超标
- Android @id和@+id 以及 @android:id 的区别