Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
XPathNavigator: Rückgabewert von SelectSingleNode()
Jack_AI
myCSharp.de - Member



Dabei seit:
Beiträge: 198
Herkunft: Erlangen

Themenstarter:

XPathNavigator: Rückgabewert von SelectSingleNode()

beantworten | zitieren | melden

Hallo Community,

ich habe mich heute zum ersten Mal mit XPath (für XML) beschäftigt. Bisher gefällt es mir sehr gut. Zumindest besser als der "konventionelle" Ansatz für XML-Parsing.

Eine Sache finde ich allerdings merkwürdig: Die Methode SelectSingleNode() des XPathNavigators. Da habe ich heute stundenlang an einer XPath-Expression gebastelt, ohne dass sich etwas am Ergebnis geändert hat, bis mir schließlich aufgefallen ist, dass SelectSingleNode einen Rückgabewert besitzt. Und zwar eine neue XPathNavigator-Instanz!

Meine Vorgehensweise war also, dass ich über XPathDocument.CreateNavigator() einen Navigator erzeuge... und im nächsten Schritt den frisch erzeugten Navigator mit einer neuen Instanz durch SelectSingleNode() überschreibe! Also xnavigator = xnavigator.SelectSingleNode(...).

Hat das so seine Richtigkeit? Mir kommt das sehr merkwürdig vor, vor allem in Bezug auf den Speicher, den diese neue Instanz ja reservieren muss.

Gruß und Dank,
Jack
private Nachricht | Beiträge des Benutzers
Jack_AI
myCSharp.de - Member



Dabei seit:
Beiträge: 198
Herkunft: Erlangen

Themenstarter:

beantworten | zitieren | melden

Okay, ist auch nicht so wichtig. Würde mich aber nach wie vor interessieren.

Eine andere Frage zu XPath:
Ich kann absolute Nodes per SelectSingleNode() und Select() anwählen. Dabei wird, soweit ich das richtig verstanden habe, eine neue Instanz von XPathNavigator bzw. XPathNodeIterator erzeugt.

Wenn nun diese neue Instanz auf einen Knoten verweist, gibt es eine Möglichkeit von dort aus wieder auf einen absoluten Knoten zu springen? SelectSingleNode und Select fangen mit dem Suchen wieder von Dokumentanfang an. Ich hätte aber gerne, dass sie vom zuletzt gefundenen Knoten beginnen.

Gruß,
Jack
private Nachricht | Beiträge des Benutzers