您可以將下表中的屬性套用至類別和類別成員,以控制 XmlSerializer 序列化或還原序列化類別實例的方式。 若要了解這些屬性如何控制 XML 串行化,請參閱 使用屬性控制 XML 串行化。
這些屬性也可以用來控制 XML Web 服務所產生的常值樣式 SOAP 訊息。 如需將這些屬性套用至 XML Web 服務方法的詳細資訊,請參閱 XML Web Services 的 XML 串行化。
如需屬性的詳細資訊,請參閱 屬性。
| 屬性 | 適用對象 | 指定 |
|---|---|---|
| XmlAnyAttributeAttribute | 會傳回 XmlAttribute 物件陣列的公共欄位、屬性、參數或傳回值。 | 解序列化時,陣列將會填入代表不在架構中的所有未知 XML 屬性的 XmlAttribute 物件。 |
| 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 型別的名稱和命名空間。 |
| ObsoleteAttribute | 公用屬性和欄位。 | 當包含的類別串行化時,將會忽略屬性或欄位。 |
除了這些屬性,這些屬性全都位於 命名空間中 System.Xml.Serialization ,您也可以將 DefaultValueAttribute 屬性套用至字段。 如果未指定任何值,DefaultValueAttribute 會自動賦予成員一個預設值。
若要控制編碼的 SOAP XML 串行化,請參閱 控制編碼 SOAP 串行化的屬性。