XML mit zusätzlichem Klassen-Wrapper in Liste deserialisieren
Sie können XmlSerializer
verwenden, um XML in List<T>
zu deserialisieren, indem Sie eine zusätzliche Klasse zum Kapseln der Liste verwenden.
Verpackungsklasse
Erstellen Sie eine Klasse, die eine Liste kapselt, zum Beispiel:
[XmlRoot("user_list")] public class UserList { public UserList() { Items = new List<User>(); } [XmlElement("user")] public List<User> Items { get; set; } }
Benutzerklasse
Definieren Sie die Klasse User
wie zuvor:
public class User { [XmlElement("id")] public Int32 Id { get; set; } [XmlElement("name")] public String Name { get; set; } }
Deserialisierungscode
Deserialisieren Sie das XML mit dem folgenden Code:
using System.Xml.Serialization; XmlSerializer ser = new XmlSerializer(typeof(UserList)); UserList list = (UserList)ser.Deserialize(new XmlTextReader("users.xml"));
Dadurch wird das XML in eine UserList
-Klasse deserialisiert, die eine Liste von User
-Objekten enthält.
Das obige ist der detaillierte Inhalt vonWie deserialisiere ich XML mit C# in eine Liste?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!