XmlAnyElementAttribute クラス
アセンブリ: System.Xml (system.xml.dll 内)

<AttributeUsageAttribute(AttributeTargets.Property Or AttributeTargets.Field Or AttributeTargets.Parameter Or AttributeTargets.ReturnValue, AllowMultiple:=True)> _ Public Class XmlAnyElementAttribute Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Property|AttributeTargets.Field|AttributeTargets.Parameter|AttributeTargets.ReturnValue, AllowMultiple=true)] public class XmlAnyElementAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Property|AttributeTargets::Field|AttributeTargets::Parameter|AttributeTargets::ReturnValue, AllowMultiple=true)] public ref class XmlAnyElementAttribute : public Attribute

XML ドキュメントに含まれるメタデータなど、XML ドキュメントの一部として送信される可能性がある任意のデータを XML 要素として含めるには、XmlAnyElementAttribute を使用します。
XmlAnyElementAttribute は、XmlElement オブジェクトまたは XmlNode オブジェクトの配列を返すフィールドに適用します。このようなフィールドは、オブジェクトがシリアル化されるか逆シリアル化されるかに応じて、2 つの方法で使用できます。シリアル化時には、オブジェクトは XML 要素または XML ノードとして生成されます。シリアル化対象のオブジェクト内にそれらの要素やノードに対応するメンバが存在するかどうかは関係ありません。この属性を適用するときに Name プロパティ値を指定した場合は、配列に挿入されるすべての XmlElement オブジェクトまたは XmlNode オブジェクトが、指定された同じ要素名と、同じ既定の名前空間を持っていることが必要です。それ以外の場合は、例外がスローされます。Namespace プロパティ値を設定した場合は、同様に Name プロパティも設定する必要があり、XmlElement オブジェクトまたは XmlNode オブジェクトの名前と名前空間の値がすべて同じであることが必要です。Name 値を指定しない場合は、任意の名前を持つ XmlElement オブジェクトまたは XmlNode オブジェクトを配列に含めることができます。
XmlSerializer クラスの Deserialize メソッドが呼び出されると、逆シリアル化対象のオブジェクト内に対応するメンバがない要素はすべて、配列にまとめられます。逆シリアル化が終了したら、XmlElement 項目のコレクションを反復処理して、データを処理できます。Name 値を指定すると、配列には、指定した名前の XML 要素だけが格納されます。Name 値を指定しない場合は、配列には、クラス内に対応するメンバがない要素がすべて格納されます。クラスに含まれている複数のフィールドにこの属性を適用する場合は、Name プロパティを使用するか、Name プロパティと Namespace プロパティを併用して、各配列の内容を区別できるようにする必要があります。このようなクラス (複数のフィールドが含まれている) に、配列を区別するためのプロパティ値 (つまり、Name と Namespace) が設定されていないフィールドが 1 つ含まれている場合、逆シリアル化時に、この配列には、他の配列には格納されない不明な XML 要素が格納されます。配列を区別するための Name 値、または Name 値と Namespace 値の組み合わせが設定されていないフィールドがクラス内に複数含まれている場合には、逆シリアル化時の動作は不定です。
XmlAnyElementAttribute は、単一の XmlElement オブジェクトを返すフィールドにも適用できます。その場合は、XmlElement クラスのプロパティとメソッドを使用して、不明な要素を繰り返し反復処理する必要があります。
XmlAnyElementAttribute の複数のインスタンスを 1 つのクラス メンバに適用できますが、各インスタンスには個別の Name プロパティ値を設定する必要があります。また、各インスタンスに同じ Name プロパティを設定した場合は、各インスタンスに設定する Namespace プロパティ値は個別にする必要があります。
XmlAnyElementAttribute をクラスのメンバに適用すると、XmlSerializer の UnknownNode イベントと UnknownAttribute イベントは発生しなくなります。
![]() |
---|
コードでは、XmlAnyElementAttribute の代わりに XmlAnyElement という短い語を使用できます。 |

XmlElement オブジェクトの配列を返す AllElements という名前のフィールドに XmlAnyElementAttribute を適用する例を次に示します。
Public Class XClass ' Apply the XmlAnyElementAttribute to a field returning an array ' of XmlElement objects. <XmlAnyElement()> Public AllElements() As XmlElement End Class 'XClass Public Class Test Public Shared Sub Main() Dim t As New Test() t.DeserializeObject("XFile.xml") End Sub 'Main Private Sub DeserializeObject(filename As String) ' Create an XmlSerializer. Dim mySerializer As New XmlSerializer(GetType(XClass)) ' To read a file, a FileStream is needed. Dim fs As New FileStream(filename, FileMode.Open) ' Deserialize the class. Dim x As XClass = CType(mySerializer.Deserialize(fs), XClass) ' Read the element names and values. Dim xel As XmlElement For Each xel In x.AllElements Console.WriteLine((xel.LocalName & ": " & xel.Value)) Next xel End Sub 'DeserializeObject End Class 'Test
public class XClass { /* Apply the XmlAnyElementAttribute to a field returning an array of XmlElement objects. */ [XmlAnyElement] public XmlElement[] AllElements; } public class Test { public static void Main() { Test t = new Test(); t.DeserializeObject("XFile.xml"); } private void DeserializeObject(string filename) { // Create an XmlSerializer. XmlSerializer mySerializer = new XmlSerializer(typeof(XClass)); // To read a file, a FileStream is needed. FileStream fs = new FileStream(filename, FileMode.Open); // Deserialize the class. XClass x = (XClass) mySerializer.Deserialize(fs); // Read the element names and values. foreach(XmlElement xel in x.AllElements) Console.WriteLine(xel.LocalName + ": " + xel.Value); } }
public ref class XClass { public: /* Apply the XmlAnyElementAttribute to a field returning an array of XmlElement objects. */ [XmlAnyElement] array<XmlElement^>^AllElements; }; public ref class Test { public: void DeserializeObject( String^ filename ) { // Create an XmlSerializer. XmlSerializer^ mySerializer = gcnew XmlSerializer( XClass::typeid ); // To read a file, a FileStream is needed. FileStream^ fs = gcnew FileStream( filename,FileMode::Open ); // Deserialize the class. XClass^ x = dynamic_cast<XClass^>(mySerializer->Deserialize( fs )); // Read the element names and values. System::Collections::IEnumerator^ myEnum = x->AllElements->GetEnumerator(); while ( myEnum->MoveNext() ) { XmlElement^ xel = safe_cast<XmlElement^>(myEnum->Current); Console::WriteLine( "{0}: {1}", xel->LocalName, xel->Value ); } } }; int main() { Test^ t = gcnew Test; t->DeserializeObject( "XFile.xml" ); }
public class XClass { /* Apply the XmlAnyElementAttribute to a field returning an array of XmlElement objects. */ /** @attribute XmlAnyElement() */ public XmlElement allElements[]; } //XClass public class Test { public static void main(String[] args) { Test t = new Test(); t.DeserializeObject("XFile.xml"); } //main private void DeserializeObject(String fileName) { // Create an XmlSerializer. XmlSerializer mySerializer = new XmlSerializer(XClass.class.ToType()); // To read a file, a FileStream is needed. FileStream fs = new FileStream(fileName, FileMode.Open); // Deserialize the class. XClass x = (XClass)mySerializer.Deserialize(fs); // Read the element names and values. for (int iCtr = 0; iCtr < x.allElements.length; iCtr++) { XmlElement xel = (XmlElement)x.allElements.get_Item(iCtr); Console.WriteLine(xel.get_LocalName() + ": " + xel.get_Value()); } } //DeserializeObject } //Test

System.Attribute
System.Xml.Serialization.XmlAnyElementAttribute


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


XmlAnyElementAttribute コンストラクタ ()
アセンブリ: System.Xml (system.xml.dll 内)


フィールドのシリアル化をオーバーライドするときに、XmlAnyElementAttribute コンストラクタを使用します。シリアル化のオーバーライドの詳細については、XmlAttributeOverrides クラスのトピックを参照してください。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


XmlAnyElementAttribute コンストラクタ (String, String)
アセンブリ: System.Xml (system.xml.dll 内)


フィールドのシリアル化をオーバーライドするときに、XmlAnyElementAttribute コンストラクタを使用します。シリアル化のオーバーライドの詳細については、XmlAttributeOverrides クラスのトピックを参照してください。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


XmlAnyElementAttribute コンストラクタ

名前 | 説明 |
---|---|
XmlAnyElementAttribute () | XmlAnyElementAttribute クラスの新しいインスタンスを初期化します。 .NET Compact Framework によってサポートされています。 |
XmlAnyElementAttribute (String) | XmlAnyElementAttribute クラスの新しいインスタンスを初期化し、XML ドキュメントに生成される XML 要素名を指定します。 .NET Compact Framework によってサポートされています。 |
XmlAnyElementAttribute (String, String) | XmlAnyElementAttribute クラスの新しいインスタンスを初期化し、XML ドキュメントに生成される XML 要素名とその XML 名前空間を指定します。 .NET Compact Framework によってサポートされています。 |

XmlAnyElementAttribute コンストラクタ (String)
アセンブリ: System.Xml (system.xml.dll 内)


フィールドのシリアル化をオーバーライドするときに、XmlAnyElementAttribute コンストラクタを使用します。シリアル化のオーバーライドの詳細については、XmlAttributeOverrides クラスのトピックを参照してください。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


XmlAnyElementAttribute プロパティ
XmlAnyElementAttribute メソッド

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 ( Attribute から継承されます。) |
![]() | GetCustomAttribute | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 ( Attribute から継承されます。) |
![]() | GetCustomAttributes | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 ( Attribute から継承されます。) |
![]() | GetHashCode | このインスタンスのハッシュ コードを返します。 ( Attribute から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | IsDefaultAttribute | 派生クラス内でオーバーライドされたときに、このインスタンスの値が派生クラスの既定値かどうかを示します。 ( Attribute から継承されます。) |
![]() | IsDefined | オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 ( Attribute から継承されます。) |
![]() | Match | 派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 ( Attribute から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

XmlAnyElementAttribute メンバ
メンバ (XmlElement オブジェクトまたは XmlNode オブジェクトの配列を返すフィールド) に、シリアル化または逆シリアル化対象のオブジェクト内に対応するメンバがない任意の XML 要素を表すオブジェクトを含めるように指定します。
XmlAnyElementAttribute データ型で公開されるメンバを以下の表に示します。



名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 ( Attribute から継承されます。) |
![]() | GetCustomAttribute | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用された指定した型のカスタム属性を取得します。 (Attribute から継承されます。) |
![]() | GetCustomAttributes | オーバーロードされます。 アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されたカスタム属性の配列を取得します。 (Attribute から継承されます。) |
![]() | GetHashCode | このインスタンスのハッシュ コードを返します。 (Attribute から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | IsDefaultAttribute | 派生クラス内でオーバーライドされたときに、このインスタンスの値が派生クラスの既定値かどうかを示します。 (Attribute から継承されます。) |
![]() | IsDefined | オーバーロードされます。 指定した型のカスタム属性が、アセンブリ、モジュール、型のメンバ、またはメソッド パラメータに適用されているかどうかを判断します。 (Attribute から継承されます。) |
![]() | Match | 派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。 (Attribute から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

Weblioに収録されているすべての辞書からXmlAnyElementAttributeを検索する場合は、下記のリンクをクリックしてください。

- XmlAnyElementAttributeのページへのリンク