次のコードがあります
var textReader = new StringReader("<root> </root>");
var settings = new XmlReaderSettings();
settings.IgnoreWhitespace = false;
var reader = XmlReader.Create(textReader, settings);
var doc = new XPathDocument(reader);
var nav = doc.CreateNavigator();
var ws = nav.SelectSingleNode("/root/text()");
ルート ノードの空白に注意してください。
ws
無効です。何故ですか?
不要な空白ノードがクエリの結果に忍び寄る例は見つかりましたが、その逆は見つかりませんでした。
ありがとう
編集:私のxmlが
<root xml:space="preserve"> </root>
クエリは正常に機能します。ただし、この場合、ノードは Whitespace ではなく SignificantWhitespace 型です。