В настоящее время я использую функцию XElement.Descendants(), которая возвращает все уровни XElements, а не только дочерние узлы.
Мне бы очень понравился IEnumerable только для детей.
Ответ 1
Непосредственные дочерние элементы одного XElement доступны, вызывая Element() или Elements(). Используйте перегрузки с именем для доступа к определенным элементам или без доступа ко всем дочерним элементам.
Существуют также аналогичные методы, такие как Attribute() и Attributes(), которые могут вам пригодиться.
Ответ 2
XElement.Nodes() должен предоставить вам то, что вы хотите.
Если вам просто нужны дочерние узлы XElement, вам может потребоваться его ограничить (в зависимости от вашего XML):