Autor Beitrag
Maliko
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Fr 11.07.14 20:26 
Hoi,

ich verzweifle gerade daran eine XML-Datei auszulesen. Und zwar hab ich das Problem, wenn ich versuche Elements auf einen bestimmten Node zu machen (Elements, da er mehrfach vorhanden ist), dann bekomme ich immer ein leeres Object vom Typ IEnumerable<XElement> zurück. Darum hab ich testweise mal XML.Elements() ohne Parameter, dann schmeißt er mir zwar das komplette Dokument in das IEnumerable<XElement>, allerdings als ein einziger Eintrag, so das ich auch mit ner Foreach-Schleife nicht durchitarieren kann.

Hat vielleicht irgendjemand eine Ahnung, woran das liegen kann (ich muss auch zugeben, ich hab noch nicht wirklich groß mit XML gearbeitet). Ich verzweifle so langsam, da ich schon seit mehreren Stunden versuche diese Daten abzurufen. Der Quellcode den ich verwende lauetet:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
XDocument xml = XDocument.Load(filePath);
IEnumerable<XElement> elements = xml.Elements();

foreach (var item in elements)
{
    var test = item;
}


Die XML-Datei darf ich euch leider nicht zeigen. Ich hoffe ihr könnt mir trotzdem irgendwie weiterhelfen.

Lg
Maliko
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Sa 12.07.14 10:26 
Hallo Maliko,

dann solltest du besser gleich mal passende Tutorials (bzw. Beispiele) aus dem Internet heraussuchen, z.B. mittels Suche nach "C# XDocument Tutorial":
Querying an XDocument vs. Querying an XElement
Visual C# 2010 - 16.9.3 Die Klasse »XDocument«

Mittels XDocument.Load erhältst du also immer zuerst den Root-Node, während XElement.Load gleich die passenden Elemente (der ersten Hierarchiestufe) liefert.
Oder eben per XDocument auf die Eigenschaft Root zugreifen:
ausblenden C#-Quelltext
1:
2:
XDocument xml = XDocument.Load(filePath);
IEnumerable<XElement> elements = xml.Root.Elements();
Maliko Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: So 13.07.14 16:21 
Na da sag ich mal lieb Danke. Das mit dem Root war es gewesen. In allen Tutorials die ich zu XML gelesen habe wurde dies nicht genannt (oder ich habs überlesen).