Ich versuche, ein XML-Dokument durchlaufen, und ich bin immer noch das erste Element in der zweiten Iteration, nicht sicher, was ich vermisse. Kann jemand helfen? Ziemlich neu mit XpathDurchschleifen von Elementen mit xPath
string file = HttpContext.Current.Server.MapPath("~/XML/Locations.xml");
Dictionary<string, Location> locationCollection = new Dictionary<string, Location>();
XPathDocument xDocument = new XPathDocument(file);
XPathNavigator xPathNavigator = xDocument.CreateNavigator();
foreach (XPathNavigator node in xPathNavigator.Select("//locations/*"))
{
string value = node.SelectSingleNode("/locations/location/cell").Value;
}
<?xml version="1.0" encoding="utf-8" ?>
<locations>
<location>
<locationName>Glendale</locationName>
<street>3717 San Fernando Road</street>
<city>Glendale</city>
<state>CA</state>
<zipcode>91204</zipcode>
<generalManager>DJ Eldon</generalManager>
<phone>(818) 552‐6246</phone>
<tollFree>(888) 600‐6011</tollFree>
<fax>(818) 552‐6248</fax>
<cell>(347) 834‐2249</cell>
<counterEmail>[email protected]</counterEmail>
<directEmail>[email protected]</directEmail>
</location>
<location>
<locationName>Chicago</locationName>
<street>1301 S. Harlem Ave.</street>
<city>Chicago</city>
<state>IL</state>
<zipcode>60402</zipcode>
<generalManager>Dave Schnulle</generalManager>
<phone>(708) 749‐1500</phone>
<tollFree>(888) 966‐1500</tollFree>
<fax>(818) 552‐6248</fax>
<cell>(708) 749‐3800</cell>
<counterEmail>[email protected]</counterEmail>
<directEmail>[email protected]</directEmail>
</location>
</locations>
Danke, das hat super funktioniert ... Ja, es gibt einen Grund, warum ich keinen einzigen XPath mache, weil ich multipule Werte zu einer Sammlung hinzufügen werde. Danke nochmal! – BoredOfBinary