XML シリアル化を制御する属性Attributes That Control XML Serialization

次の表に示す属性をクラスおよびクラス メンバーに適用すると、XmlSerializer がそのクラスのインスタンスをシリアル化または逆シリアル化する方法を制御できます。You can apply the attributes in the following table to classes and class members to control the way in which the XmlSerializer serializes or deserializes an instance of the class. これらの属性で XML シリアル化を制御する方法については、「属性を使用した XML シリアル化の制御」を参照してください。To understand how these attributes control XML serialization, see Controlling XML Serialization Using Attributes.

また、これらの属性を使用して、XML Web サービスによって生成されるリテラル スタイルの SOAP メッセージを制御することもできます。These attributes can also be used to control the literal style SOAP messages generated by an XML Web service. これらの属性を XML Web サービス メソッドに適用する方法の詳細については、「XML Web サービスを使用した XML シリアル化」を参照してください。For more information about applying these attributes to an XML Web services method, see XML Serialization with XML Web Services.

属性の詳細については、「属性」を参照してください。For more information about attributes, see Attributes.

属性Attribute 対象Applies to 指定内容Specifies
XmlAnyAttributeAttribute XmlAttribute オブジェクトの配列を返すパブリック フィールド、パブリック プロパティ、パブリック パラメーター、または戻り値Public field, property, parameter, or return value that returns an array of XmlAttribute objects. 逆シリアル化時に、スキーマで未定義のすべての XML 属性を表す XmlAttribute オブジェクトを配列に挿入します。When deserializing, the array will be filled with XmlAttribute objects that represent all XML attributes unknown to the schema.
XmlAnyElementAttribute XmlElement オブジェクトの配列を返すパブリック フィールド、パブリック プロパティ、パブリック パラメーター、または戻り値Public field, property, parameter, or return value that returns an array of XmlElement objects. 逆シリアル化時に、スキーマで未定義のすべての XML 要素を表す XmlElement オブジェクトを配列に挿入します。When deserializing, the array is filled with XmlElement objects that represent all XML elements unknown to the schema.
XmlArrayAttribute 複合オブジェクトの配列を返すパブリック フィールド、パブリック プロパティ、パブリック パラメーター、または戻り値Public field, property, parameter, or return value that returns an array of complex objects. 配列のメンバーを XML 配列のメンバーとして生成します。The members of the array will be generated as members of an XML array.
XmlArrayItemAttribute 複合オブジェクトの配列を返すパブリック フィールド、パブリック プロパティ、パブリック パラメーター、または戻り値Public field, property, parameter, or return value that returns an array of complex objects. 配列に挿入できる派生型を指定します。The derived types that can be inserted into an array. 通常、XmlArrayAttribute と共に適用されます。Usually applied in conjunction with an XmlArrayAttribute.
XmlAttributeAttribute パブリック フィールド、パブリック プロパティ、パブリック パラメーター、または戻り値Public field, property, parameter, or return value. メンバーを XML 属性としてシリアル化します。The member will be serialized as an XML attribute.
XmlChoiceIdentifierAttribute パブリック フィールド、パブリック プロパティ、パブリック パラメーター、または戻り値Public field, property, parameter, or return value. 列挙体を使用して、メンバーを明確に区別できるようにします。The member can be further disambiguated by using an enumeration.
XmlElementAttribute パブリック フィールド、パブリック プロパティ、パブリック パラメーター、または戻り値Public field, property, parameter, or return value. フィールドまたはプロパティを XML 要素としてシリアル化します。The field or property will be serialized as an XML element.
XmlEnumAttribute 列挙体識別子であるパブリック フィールドPublic field that is an enumeration identifier. 列挙体のメンバーの要素名を指定します。The element name of an enumeration member.
XmlIgnoreAttribute パブリック プロパティとパブリック フィールドPublic properties and fields. クラスのシリアル化時に、そのクラスに含まれているプロパティまたはフィールドを無視します。The property or field should be ignored when the containing class is serialized.
XmlIncludeAttribute パブリック派生クラス宣言、およびパブリック メソッドの戻り値 (Web サービス記述言語 (WSDL: Web Service Description Language) ドキュメント用)Public derived class declarations, and return values of public methods for Web Services Description Language (WSDL) documents. シリアル化されたときにクラスが認識されるように、スキーマの生成時にそのクラスを対象に含めます。The class should be included when generating schemas (to be recognized when serialized).
XmlRootAttribute パブリック クラス宣言Public class declarations. 属性ターゲットを XML ルート要素として XML シリアル化する方法を制御します。Controls XML serialization of the attribute target as an XML root element. この属性を使用して、さらに名前空間と要素名を指定できます。Use the attribute to further specify the namespace and element name.
XmlTextAttribute パブリック プロパティとパブリック フィールドPublic properties and fields. プロパティまたはフィールドを XML テキストとしてシリアル化します。The property or field should be serialized as XML text.
XmlTypeAttribute パブリック クラス宣言Public class declarations. XML 型の名前および名前空間を指定します。The name and namespace of the XML type.

System.Xml.Serialization 名前空間にあるこれらの属性の他に、DefaultValueAttribute 属性もフィールドに適用できます。In addition to these attributes, which are all found in the System.Xml.Serialization namespace, you can also apply the DefaultValueAttribute attribute to a field. DefaultValueAttribute は、メンバーの値が指定されていない場合に、メンバーに自動的に割り当てられる値を設定します。The DefaultValueAttribute sets the value that will be automatically assigned to the member if no value is specified.

エンコード済みの SOAP XML シリアル化を制御する場合は、「Attributes That Control Encoded SOAP Serialization」(エンコード済み SOAP シリアル化を制御する属性) を参照してください。To control encoded SOAP XML serialization, see Attributes That Control Encoded SOAP Serialization.

関連項目See also