用来控制 XML 序列化的属性

时间:2024-10-12 20:38:01

通过将下表中的属性应用于类和类成员,可以控制 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 序列化的属性