In der Umgebung des XML -Dokuments unter der Umgebung der XML -Dokumentumgebung, detaillierte Erläuterung von
Bei der Verarbeitung von XML -Dokumenten in der .NET -Anwendung wird das XML -Dokument häufig in ein C#-Objekt serialisiert. Dieser Prozess beinhaltet das Konvertieren von XML -Daten in das entsprechende C#Repräsentationsformular.
Beispiel XML -Dokument
Berücksichtigung der folgenden XML -Dokumente mit verschiedenen Autoinformationen:
1 | <?xml version= "1.0" encoding= "utf-8" ?><cars><car><stocknumber>1020</stocknumber><make>Nissan</make><model>Sentra</model></car><car><stocknumber>1010</stocknumber><make>Toyota</make><model>Corolla</model></car><car><stocknumber>1111</stocknumber><make>Honda</make><model>Accord</model></car></cars>
|
Nach dem Login kopieren
Definition C#
Um das XML -Dokument zu vertiefen, müssen wir die C#-Klasse definieren, die die XML -Struktur darstellt. Erstellen Sie zwei Kategorien: <类>
Autoklasse: Details eines einzelnen Autos. -
1 2 3 4 5 6 7 8 9 10 11 12 | [Serializable()]
public class Car
{
[System.Xml.Serialization.XmlElementAttribute( "StockNumber" )]
public string StockNumber{ get; set; }
[System.Xml.Serialization.XmlElementAttribute( "Make" )]
public string Make{ get; set; }
[System.Xml.Serialization.XmlElementAttribute( "Model" )]
public string Model{ get; set; }
}
|
Nach dem Login kopieren
Autos: Das Root -Element des XML -Dokuments enthält ein Array eines Autoobjekts. -
1 2 3 4 5 6 7 | [System.Xml.Serialization.XmlRootAttribute( "Cars" , Namespace = "" , IsNullable = false)]
public class Cars
{
[XmlArrayItem(typeof(Car))]
public Car[] Car { get; set; }
}
|
Nach dem Login kopieren
Der Prozess der Vertiefung der Serialisierung
Um das XML -Dokument zu verwirklichen, erstellen Sie bitte eine CoSerializer -Klasse, die die Deserialize -Methode enthält:
Diese Methode lädt das XML -Dokument, verwendet XMLSerializer, um es in ein CARS -Objekt umzuwandeln, und gibt eine serialisierte Zählerdaten zurück.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public class CarSerializer
{
public Cars Deserialize()
{
string path = HttpContext.Current.ApplicationInstance.Server.MapPath( "~/App_Data/" ) + "cars.xml" ;
using (XmlReader reader = XmlReader.Create(path))
{
XmlSerializer ser = new XmlSerializer(typeof(Cars));
Cars cars = (Cars)ser.Deserialize(reader);
return cars;
}
}
}
|
Nach dem Login kopieren
Verwenden Sie die Daten der Carrier -Oriented -Daten
Jetzt können Sie mit der methodie der Deseerialize das CARS -Objekt des Sequentials erhalten und dann darauf zugreifen, um Informationen über das Auto zu bedienen und abzurufen.
Das obige ist der detaillierte Inhalt vonWie kann ich XML -Dokumente in C# -Objekte deserialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!