一般来说,asp.net的配置文件用web.config就可以解决,但是有时候我们希望完全用自己的形式来配置某些东西,比如希望用下面的形式来配置一个站点的所有有message。
<Messages>
    <Message ID="ID1">Message1</Message>
    <Message ID="ID2">Message1</Message>
</Messages>

这时候用ConfigurationElement就搞不懂中间的那个Message1的那样的配置了。这时候,我们可以用xml反序列化来解决这个问题。

为了用反序列化,我们必须要建立一个messages对应的class,借助于XML 架构定义工具(xsd.exe)很容易就完成这个目标:
  第一步是XML→XML 架构(xsd文件) 命令就是:xsd xml文件名,这个地方需要注意的是,这个xml文件名的扩展名必须是.xml
  第二步是xsd→class  命令就是:xsd xsd文件名 /c ,如果想要指定生成的class的namespace,那么加上/n:mynamespace  就可以了。

这样这个xml对应的class就完全生成了,接下来就是xml反序列化读取了。另外,为了提高性能,还可以以这个配置文件的物理路径作为缓冲依赖,把这个配置加入缓存。

转载于:https://www.cnblogs.com/zzy2740/archive/2010/07/16/1778660.html

用XML反序列化快速完成ASP.NET配置文件相关推荐

  1. .NET Core实战项目之CMS 第二章 入门篇-快速入门ASP.NET Core看这篇就够了

    本来这篇只是想简单介绍下ASP.NET Core MVC项目的(毕竟要照顾到很多新手朋友),但是转念一想不如来点猛的(考虑到急性子的朋友),让你通过本文的学习就能快速的入门ASP.NET Core.既 ...

  2. 认识ASP.NET配置文件Web.config

      认识ASP.NET配置文件Web.config Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序 ...

  3. ASP.NET 配置文件的层次和继承关系

    ASP.NET 通过在应用程序的任意目录保存配置文件的方式实现 ASP.NET 配置文件的层次继承化管理.这种结构允许开发者对应用程序特定目录进行更细节化的配置,并且配置结果不会影响到更高层的目录级别 ...

  4. 让Visual Studio 2013为你自动生成XML反序列化的类

    Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性.如: 1. 在代码编辑界面的右侧滚动条上显示不同颜色的标签,让开发人员可以对所编辑文档的修改.查找.定位情 ...

  5. XML反序列化出错,XML 文档(2, 2)中有错误

    XML转换为实体类的错误处理方案 一.错误描述: XML反序列化出错,XML 文档(2, 2)中有错误 二.解决方案: 在实体类的字段要加上XmlElement属性 三.具体实现: 1.XML文档 & ...

  6. c# XML反序列化 修改前缀

    对象类 //XML命名空间,可用于与反序列化方法中指定当前节点的前缀,需要注意的是,此方法指定命名空间所修改的前缀对当前节点包含的所有子节点生效,对当前节点本身不生效,当前节点的前缀继承父节点 [Xm ...

  7. XML数据源快速开发框架——XmlFramwork

    浪漫的周末从cnblogs开始.话说,今天和往常的周末一样,韩君躲在被窝里用手机翻阅着园子里的珠玑.一篇<应用XML作为数据库的快速开发框架>的文章在韩君脑子里激起了一波球形闪电.想想上周 ...

  8. 将Java对象序列化成XML格式,将XML反序列化还原为Java对象

    摘要:将Java对象序列化成XML格式,将XML反序列化还原为Java对象. 一:创建Maven工程,引入xstream依赖: <!--xstream--><dependency&g ...

  9. ASP.NET配置文件Web.config

    [摘 要]Web.config文件是一个XML文本文件,它用来储存 ASP.net Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每 ...

最新文章

  1. iOS 生成带 logo 的二维码,区域截屏保存至相册(小功能二连发 (一))
  2. linux空间共享Windows
  3. golang string int int32 int64 float32 float64 time 互相转换
  4. 5.1 指针与地址 (C)
  5. 深入探究VC —— 链接器link.exe(4)【转】http://blog.csdn.net/wangningyu/article/details/4849452...
  6. 解决XP中CPU占用率过高问题, 关了445这个端口(ZT)
  7. 【Git/Github学习笔记】Git常用命令(代码冲突)
  8. java rpg对战_java实现模拟RPG格斗
  9. MySQL8 OCP 证书
  10. 纬地道路纵断面设计教程_如何高效算量?市政道路从识图算量到施工工艺,一篇全搞定!...
  11. 将html内容转换成word文档,一招教你将网页内容转化为word文档保存
  12. 此数据库处于单用户模式,当前某个用户已与其连接。 ALTER DATABASE 语句失败。 (Microsoft SQL Server,错误: 5064)...
  13. 广西南宁机器人比赛_缤纷校园|2018年广西中小学电脑机器人竞赛开赛 南宁学子大显身手...
  14. mysql cleaned up_关于mysqld自动停止的问题
  15. 一瞬间、一刹那、一弹指具体是多少时间呢?
  16. 计算机原理寄存器基础知识,计算机组成原理基础知识
  17. iqooneo3支持鸿蒙系统吗,iQOO Neo3搭载144Hz竞速屏:支持全局自适应刷新率
  18. 鼓励师加成太刺激,鼻血喷了半斤,代码不一会儿就写完了...
  19. 计算机与航空方向专业,2018航空航天工程专业就业前景和就业方向分析
  20. C语言|鼠标点击开始

热门文章

  1. WebSocket协议分析
  2. java 查询 代码_java使用es查询的示例代码
  3. Python培训教程分享:Python中选择结构是什么
  4. selenium--iframe之模拟qq空间登录
  5. 06- web兼容性测试
  6. 关于Android开源库分享平台,(GitClub)微信小程序的开发体验
  7. java 复制对象有哪些方式
  8. php删除目录下的所有文件和目录
  9. MySQL 5.5 服务器变量详解(二)
  10. [译]Web Inspector开始支持CSS区域