通过将下表中的属性应用于类和类成员,可以控制 XmlSerializer 序列化或反序列化该类的实例的方式。若要了解这些属性如何控制 XML 序列化,请参见使用属性控制 XML 序列化

这些属性还可用于控制 XML Web services 生成的文本样式的 SOAP 消息。有关将这些属性应用于 XML Web services 方法的更多信息,请参见使用 XML Web services 进行 XML 序列化

有关属性的更多信息,请参见Extending Metadata Using Attributes

 
属性 应用于 指定

XmlAnyAttributeAttribute

公共字段、属性、参数或返回 XmlAttribute 对象数组的返回值。

反序列化时,将会使用 XmlAttribute 对象填充数组,而这些对象代表对于架构未知的所有 XML 属性。

XmlAnyElementAttribute

公共字段、属性、参数或返回 XmlElement 对象数组的返回值。

反序列化时,将会使用 XmlElement 对象填充数组,而这些对象代表对于架构未知的所有 XML 元素。

XmlArrayAttribute

公共字段、属性、参数或返回复杂对象的数组的返回值。

数组成员将作为 XML 数组的成员生成。

XmlArrayItemAttribute

公共字段、属性、参数或返回复杂对象的数组的返回值。

可以插入数组的派生类型。通常与 XmlArrayAttribute 一起应用。

XmlAttributeAttribute

公共字段、属性、参数或返回值。

成员将作为 XML 属性进行序列化。

XmlChoiceIdentifierAttribute

公共字段、属性、参数或返回值。

可以使用枚举进一步消除成员的歧义。

XmlElementAttribute

公共字段、属性、参数或返回值。

字段或属性将作为 XML 元素进行序列化。

XmlEnumAttribute

作为枚举标识符的公共字段。

枚举成员的元素名称。

XmlIgnoreAttribute

公共属性和公共字段。

序列化包含类时,应该忽略属性或字段。

XmlIncludeAttribute

公共派生类声明,以及 Web 服务描述语言 (WSDL) 文档的公共方法的返回值。

生成要在序列化时识别的架构时,应该将该类包括在内。

XmlRootAttribute

公共类声明。

控制视为 XML 根元素的属性目标的 XML 序列化。使用该属性可进一步指定命名空间和元素名称。

XmlTextAttribute

公共属性和公共字段。

属性或字段应该作为 XML 文本进行序列化。

XmlTypeAttribute

公共类声明。

XML 类型的名称和命名空间。

除了这些属性(全部位于 System.Xml.Serialization 命名空间中)之外,还可以将 System.ComponentModel.DefaultValueAttribute 属性应用于字段。DefaultValueAttribute 可以设置将自动分配给成员的值(如果未指定值)。

若要控制编码的 SOAP XML 序列化,请参见用来控制编码的 SOAP 序列化的属性

用来控制 XML 序列化的属性的更多相关文章

  1. .NET中XML序列化和反序列化常用类和用来控制XML序列化的属性总结(XmlSerializer,XmlTypeAttribute,XmlElementAttribute,XmlAttributeAttribute,XmlArrayAttribute...)

    序列化和反序列化是指什么? 序列化(seriallization): 将对象转化为便于传输的数据格式, 常见的序列化格式:二进制格式,字节数组,json字符串,xml字符串.反序列化(deserial ...

  2. 在C#中使用属性控制 XML 序列化来解析XML

    今天需要解析一个XML,这个XML和一般情况用.NET的序列化出来的格式不太一样. 我就又补习了一下. 分享一下学习成果吧. 示例代码下载: http://download.csdn.net/deta ...

  3. C#.NET解析XML(使用属性控制 XML 序列化)

    使用属性可以控制对象的 XML 序列化. 默认情况下,XML 元素名称由类或成员名称确定.在名为 Book 的简单类中,字段 ISBN 将生成 XML 元素标记 <ISBN>,如下面的示例 ...

  4. XML序列化 System.Xml.Serialization

    一.定义元数据 XML序列化常用属性:XMLRoot,XMlType.XMLText.XMLEnum等 [Serializable] [XmlRoot] public class Product { ...

  5. [.net 面向对象程序设计进阶] (11) 序列化(Serialization)(三) 通过接口 IXmlSerializable 实现XML序列化 及 通用XML类

    [.net 面向对象程序设计进阶] (11) 序列化(Serialization)(三) 通过接口 IXmlSerializable 实现XML序列化 及 通用XML类 本节导读:本节主要介绍通过序列 ...

  6. XML序列化和反序列化

    上篇总结了下JSON的序列化和反序列化,博园中大牛给了很多牛叉的评论,学习了不少. 不过在上篇中忘了把json序列化和反序列化的另外一种方式写上去了,这里做个简单的补充: Json篇:http://w ...

  7. XmlSerializer 对象的Xml序列化和反序列化

    http://www.cnblogs.com/yukaizhao/archive/2011/07/22/xml-serialization.html 这篇随笔对应的.Net命名空间是System.Xm ...

  8. 【转】Xml序列化

    XML序列化是将对象的公共属性和字段转换为XML格式,以便存储或传输的过程.反序列化则是从XML输出中重新创建原始状态的对象.XML序列化中最主要的类是XmlSerializer类.它的最重要的方法是 ...

  9. .net学习笔记---xml序列化

    XML序列化是将对象的公共属性和字段转换为XML格式,以便存储或传输的过程.反序列化则是从XML输出中重新创建原始状态的对象.XML序列化中最主要的类是XmlSerializer类.它的最重要的方法是 ...

随机推荐

  1. poj 3321

    题目链接 题意:一开始1-n都有苹果,Q查询以x为根下存在多少. 树状数组+DFS+队列转换 这题纠结了2天,一开始一点思路都没有,看大神都是吧树状数组转换成队列来做 看了好久都不知道怎么转换的, 解 ...

  2. 我的Android4.3新书即将上市,谢谢大家的支持

    首先感谢清华大学.电子工业.机械工业.人民邮电等各大出版社对本书的肯定.我想说中国的IT业如果没有你们的辛勤工作,是不会发展得这么快的.经过再三权衡,本书将选择人民邮电出版社于近几个月在全国出版发行. ...

  3. DB2 中日期 比较

    在DB2中的Date 一共识别三种格式,最常见的是这样 '2013-12-12' 对,你没看错,DB2认为这样的字符串就是Date数据 然后我们可以利用函数这样寻找日期区间 select * from ...

  4. Encode and Decode Strings 解答

    Question Design an algorithm to encode a list of strings to a string. The encoded string is then sen ...

  5. Python 协程(gevent)

    协程,又叫微线程,协程是一种用户态的轻量级线程. 协程拥有自己的寄存器上下文和栈.协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈.因此: 协程能保留上 ...

  6. 开机后将sim/uim卡上的联系人写入数据库

    tyle="margin:20px 0px 0px; font-size:14px; line-height:26px; font-family:Arial; color:rgb(51,51 ...

  7. Android资源--颜色RGB值以及名称及样图

      颜  色    RGB值 英文名 中文名   #FFB6C1 LightPink 浅粉红   #FFC0CB Pink 粉红   #DC143C Crimson 深红/猩红   #FFF0F5 L ...

  8. 2014 (多校)1011 ZCC Loves Codefires

    自从做了多校,整个人都不好了,老是被高中生就算了,题老是都不懂=-=原谅我是个菜鸟,原谅我智力不行.唯一的水题. Problem Description Though ZCC has many Fan ...

  9. [Spring入门学习笔记][Spring的AOP原理]

    AOP是什么? 面向切面编程 软件工程有一个基本原则叫做“关注点分离”(Concern Separation),通俗的理解就是不同的问题交给不同的部分去解决,每部分专注于解决自己的问题.这年头互联网也 ...

  10. 19. Crontab

    一.Crontab 的使用 1.crontab 命令参数: -e   编辑该用户的计时器设置 -l 列出该用户的计时器设置 -r 删除该用户的计时器设置-u<用户名称> 指定要设定计时器的 ...