控制 XML 序列化的属性

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

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

有关属性的更多信息,请参见利用属性扩展元数据

属性 应用于 指定

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 流指定一个备用元素名
如何:将对象序列化
如何:将对象反序列化

参考

XmlSerializer

概念

使用属性控制 XML 序列化

其他资源

XML 和 SOAP 序列化