Я использую следующую строку для чтения в XML-документе, который может содержать или не содержать некоторые комментарии, заключенные в скобки «<!-- -->» в верхней части моего XML-файла:
XDocument xe1 = XDocument.Load(filepath)
Как читать в комментариях и хранить в виде строки?
Я делаю это в MS Visual Studio C#.
Я знаю, что есть что-то под названием «XComment», но я не могу найти простого примера, который использовал бы его при чтении в XML (я могу найти только примеры для создания нового файла XML).
-Адина





Используйте этот фрагмент, чтобы получить все комментарии из XDocument:
var document = XDocument.Load("test.xml");
var comments = from node in document.Elements().DescendantNodesAndSelf()
where node.NodeType == XmlNodeType.Comment
select node as XComment;
и это для анализа только комментариев верхнего уровня:
var document = XDocument.Load("test.xml");
var comments = from node in document.Nodes()
where node.NodeType == XmlNodeType.Comment
select node as XComment;
Вместо проверки наличия node.NodeType == XmlNodeType.Comment и последующего выбора node as XComment можно использовать OfType: document.Nodes().OfType<XComment>(); для комментариев под корнем: document.Root.Nodes().OfType<XComment>()
Намного более элегантно, чем то, что я пытался. Спасибо!