Синтаксический анализ XML с использованием XElement и дочернего содержимого - PullRequest
0 голосов
/ 02 февраля 2012

У меня есть функция, которая возвращает значение из определенного тега в документе XML:

            XElement elem = XElement.Parse(xml_string);
            string ret = elem.Element(key).Value.ToString();
            return ret;

Я пытаюсь выяснить, как создать другой метод, который возвращает полное строковое содержимое, содержащееся втег, включая дочерние теги и дочерние значения.

то есть, если у меня есть:

<foo>
 Hello
 <child1>val1</child1>
 <child2>val2</child2>
</foo>

Приведенный выше метод правильно возвращает «Hello», но мне нужен еще один метод, который возвращает:

Hello<child1>val1</child1><child2>val2</child2>

1 Ответ

1 голос
/ 02 февраля 2012

Самый простой вариант - прокрутить коллекцию, возвращаемую XElement.Nodes (), и объединить значения XNode.ToString () для всех этих узлов.Если вы не хотите, чтобы он форматировался (а это звучит так, как будто вы этого не делаете), вызовите XNode.ToString (SaveOptions.DisableFormatting)

...