Это может быть простое исправление (ну, вероятно, это так), но по какой-то причине я просто не могу понять это.
Итак, у меня есть xml, который выглядит примерно так:
XElement xml = XElement.Parse (
@"<Alphabet>
<a name="A" />
<b name="B" />
<d name="D" />
<e name="E" />
</Alphabet>");
Итак, позже в моем коде я ссылаюсь на узел, который может существовать или не существовать там, например:
var name = (from b in xml.Descendants("c")
select b.Attribute("name")).FirstOrDefault().Value;
Но когда он не существует, вместо возврата null или "" он генерирует исключение NullReferenceException: ссылка на объект не установлена на экземпляр объекта.
Какой лучший способ проверить и проверить, существует ли узел в моем запросе linq? Или мне нужно проверить, существует ли какой-то другой способ?