XmlArrayItemAttribute.NestingLevel Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Ebene in einer Hierarchie von XML-Elementen ab, auf die das XmlArrayItemAttribute angewendet wird, oder legt diese fest.
public:
property int NestingLevel { int get(); void set(int value); };
public int NestingLevel { get; set; }
member this.NestingLevel : int with get, set
Public Property NestingLevel As Integer
Eigenschaftswert
Der nullbasierte Index einer Reihe von Indizes in einem Array von Arrays.
Beispiele
Im folgenden Beispiel werden drei XmlArrayItemAttribute Attribute auf ein Array von Arrays angewendet. Um anzugeben, für welche Arrays jedes Attribut gilt, wird die NestingLevel Eigenschaft auf den Index der Arrays festgelegt.
#using <System.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
using namespace System::Xml::Serialization;
using namespace System::IO;
public ref class Forest
{
// Set the NestingLevel for each array. The first
// attribute (NestingLevel = 0) is optional.
public:
[XmlArrayItem(ElementName = "tree", NestingLevel = 0)]
[XmlArrayItem(ElementName = "branch", NestingLevel = 1)]
[XmlArrayItem(ElementName = "leaf",NestingLevel = 2)]
array<array<array<String^>^>^>^ TreeArray;
};
int main()
{
XmlSerializer^ serializer = gcnew XmlSerializer(Forest::typeid);
Forest^ constructedForest = gcnew Forest();
array<array<array<String^>^>^>^ tree =
gcnew array<array<array<String^>^>^>(2);
array<array<String^>^>^ firstBranch = gcnew array<array<String^>^>(1);
firstBranch[0] = gcnew array<String^>{"One"};
tree[0] = firstBranch;
array<array<String^>^>^ secondBranch = gcnew array<array<String^>^>(2);
secondBranch[0] = gcnew array<String^>{"One","Two"};
secondBranch[1] = gcnew array<String^>{"One","Two","Three"};
tree[1] = secondBranch;
constructedForest->TreeArray = tree;
serializer->Serialize(Console::Out, constructedForest);
}
using System;
using System.Xml;
using System.Xml.Serialization;
using System.IO;
public class Forest{
/* Set the NestingLevel for each array. The first
attribute (NestingLevel = 0) is optional. */
[XmlArrayItem(ElementName = "tree", NestingLevel = 0)]
[XmlArrayItem(ElementName = "branch", NestingLevel = 1)]
[XmlArrayItem(ElementName = "leaf",NestingLevel = 2)]
public string[][][] TreeArray;
}
public class Test{
public static void Main(){
Test t = new Test();
t.SerializeObject("Tree.xml");
}
private void SerializeObject(string filename){
XmlSerializer serializer =
new XmlSerializer(typeof(Forest));
Forest f = new Forest();
string[][][] myTreeArray = new string[2] [][];
string[][]myBranchArray1= new string[1][];
myBranchArray1[0]=new string[1]{"One"};
myTreeArray[0]=myBranchArray1;
string[][]myBranchArray2= new string[2][];
myBranchArray2[0]=new string[2]{"One","Two"};
myBranchArray2[1]=new string[3]{"One","Two","Three"};
myTreeArray[1]=myBranchArray2;
f.TreeArray=myTreeArray;
serializer.Serialize(Console.Out, f);
}
}
Hinweise
Ein XML-Dokument kann Hierarchien von XML-Elementen enthalten. Um eine solche Hierarchie darzustellen, wird ein Array von Arrays verwendet. In einem solchen Array stellt jeder Index eine Ebene in der Hierarchie dar. Daher wird die NestingLevel Eigenschaft nur verwendet, wenn ein XmlArrayItemAttribute Feld angewendet wird, das ein Array von Arrays zurückgibt.
Geben Sie beim Anwenden des Attributs an, welche Hierarchieebene das Attribut beeinflusst, indem Sie das NestingLevelAttribut festlegen. Der erste Index hat immer den Wert 0; daher ist es optional, den NestingLevel Wert "-an XmlArrayItemAttribute " ohne NestingLevel Wert auf den ersten Arrayindex festzulegen. Nur die nachfolgenden XmlArrayItemAttribute Objekte erfordern NestingLevel Werte (wie 1, 2, 3 usw.).