通过将下表中的特性应用于类和类成员,可以控制 XmlSerializer 序列化或反序列化该类的实例的方式。若要了解这些特性如何控制 XML 序列化,请参见使用特性控制 XML 序列化。
这些特性还可用于控制 XML Web services 生成的文本样式的 SOAP 消息。有关将这些特性应用于 XML Web services 方法的更多信息,请参见 使用 XML Web services 进行 XML 序列化。
有关特性的更多信息,请参见Extending Metadata Using Attributes。
特性 | 适用对象 | 指定 |
---|---|---|
公共字段、属性、参数或返回 XmlAttribute 对象数组的返回值。 |
反序列化时,将会使用 XmlAttribute 对象填充数组,而这些对象代表对于架构未知的所有 XML 特性。 |
|
公共字段、属性、参数或返回 XmlElement 对象数组的返回值。 |
反序列化时,将会使用 XmlElement 对象填充数组,而这些对象代表对于架构未知的所有 XML 元素。 |
|
公共字段、属性、参数或返回复杂对象数组的返回值。 |
数组成员将作为 XML 数组的成员生成。 |
|
公共字段、属性、参数或返回复杂对象的数组的返回值。 |
可以插入数组的派生类型。通常与 XmlArrayAttribute 一起应用。 |
|
公共字段、属性、参数或返回值。 |
成员将作为 XML 特性进行序列化。 |
|
公共字段、属性、参数或返回值。 |
可以使用枚举进一步消除成员的歧义。 |
|
公共字段、属性、参数或返回值。 |
字段或属性将作为 XML 元素进行序列化。 |
|
作为枚举标识符的公共字段。 |
枚举成员的元素名称。 |
|
公共属性和公共字段。 |
序列化包含类时,应该忽略属性或字段。 |
|
公共派生类声明,以及 Web 服务描述语言 (WSDL) 文档的公共方法的返回值。 |
生成要在序列化时识别的架构时,应该将该类包括在内。 |
|
公共类声明。 |
控制视为 XML 根元素的特性目标的 XML 序列化。使用该特性可进一步指定命名空间和元素名称。 |
|
公共属性和公共字段。 |
属性或字段应该作为 XML 文本进行序列化。 |
|
公共类声明。 |
XML 类型的名称和命名空间。 |
除了这些特性(全部位于 System.Xml.Serialization 命名空间中)之外,还可以将 System.ComponentModel.DefaultValueAttribute 特性应用于字段。DefaultValueAttribute 可以设置在未指定值时将自动分配给成员的值。
若要控制编码的 SOAP XML 序列化,请参见用来控制编码的 SOAP 序列化的特性。
另请参见
任务
如何:指定 XML 流的替代元素名称
如何:序列化对象
如何:反序列化对象