C# XML foreach -> while machen
lima-city → Forum → Programmiersprachen → Programmieren mit .NET & Mono
attribut
aufgabe
auslese
code
dank
datum
einzelnen elemente
ersten freundes
freund
freund code
glauben
komplexe abfrage
lange einarbeiten
nehmen
problem
show
string
test
versucht code
zugriff
-
Hallo LC,
ich habe einen XML code in der Variable result gespeichert.
XML:
<?xml version="1.0" encoding="utf-8" ?> - <api> <login> <inhalt></inhalt> </login> <freunde> <freund> <nick>user1</nick> <id>10</id> <bild>test.jpg</bild> </freund> <freund> <nick>user2</nick> <id>11</id> <bild>test2.jpg</bild> </freund> </freunde> </api>
Nun möchte ich alle freunde auslesen. Das hab ich so versucht:
XmlDocument xmlfreunde = new XmlDocument(); xmlfreunde.LoadXml(result); XmlNodeList xnLisst = xmlfreunde.SelectNodes("api/freunde"); foreach (XmlNode xfreunden in xnLisst) { string freund = xfreunden["freund"].InnerText; MessageBox.Show(freund); }
So gibt er mit aber nur die Daten es ersten freundes aus. Wie müsste das als while ausehen?
HELP -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo christian1603,
ich glaube, dass Dein XPath falsch ist. Der sollte "api/freunde/freund" heißen:
XmlDocument xmlfreunde = new XmlDocument(); xmlfreunde.LoadXml(result); XmlNodeList xnLisst = xmlfreunde.SelectNodes("api/freunde/freund"); foreach (XmlNode xfreund in xnLisst) { string freund = xfreund.InnerText; MessageBox.Show(freund); }
-
darkpandemic schrieb: Hallo christian1603,
ich glaube, dass Dein XPath falsch ist. Der sollte "api/freunde/freund" heißen:
XmlDocument xmlfreunde = new XmlDocument(); xmlfreunde.LoadXml(result); XmlNodeList xnLisst = xmlfreunde.SelectNodes("api/freunde/freund"); foreach (XmlNode xfreund in xnLisst) { string freund = xfreund.InnerText; MessageBox.Show(freund); }
Stimmt Danke,
jetzt gehts :-)
-
Hallo Christian,
auch wenn das Problem schon gelöst ist: ich würde für solche Aufgaben LINQ nehmen. Der Zugriff auf die einzelnen Elemente und Attribute ist damit ziemlich elegant und für eine nicht zu komplexe Abfrage muss man sich auch nicht lange einarbeiten.
Gruß
Udo -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage