2016-06-14 15 views
0

Kann nicht scheinen, eine endgültige Antwort zu finden.Verwendung von XPathNavigator nach der Beseitigung von StringReader

Ich wundere mich, wenn ich nach der Initialisierung eines XPathDocument mit einem StringReader und einen XPathNavigator bekommen bekomme ich Fehler, wenn ich den Navigator nach dem Beseitigen des StringReader verwenden?

Hier ist ein Beispiel.

XPathDocument doc = null; 
XPathNavigator nav = null; 

using (var reader = new StringReader(config)) 
{ 
    doc = new XPathDocument(reader); 
    nav = doc.CreateNavigator(); 
    nav.MoveToFirstChild(); 
} 

var test = nav.SelectSingleNode("testNode"); 

Wenn ich weiterhin dieses Nav-Objekt verwende, bekomme ich einen Fehler, da der Leser entsorgt wurde?

Antwort

1

Sie können weiterhin Nav verwenden. Alles, was StringReader tut, liest eine Konfigurationsdatei, die an Ihr XPathDocument-Dokument übergeben wird. Danach ist der Job erledigt, es wurden alle Daten verwendet.

+0

Super danke! – gmoney