Как определить, существует ли элемент, используя лямбда-выражение в C #?

Я использовал оператор try / catch для проверки того, существует ли элемент, когда я его анализирую. Очевидно, это не лучший способ сделать это. Я использовал LINQ (лямбда-выражения) для большей части своего синтаксического анализа, но я просто не знаю, как определить, есть ли элемент или нет.

Одна большая проблема с некоторыми решениями, которые я обнаружил, заключается в том, что они занимают в 3-4 раза больше кода, чем использование блока try / catch, что не соответствует цели.

Я предполагаю, что код будет выглядеть примерно так:

if(document.Element("myElement").Exists())
{
   var myValue = document.Element("myElement").Value;
}

Я нашел эту ссылку , но в моем случае цикл не нужен, так как я могу гарантировать, что он появится только один раз, если он существуют. Плюс необходимость создания фиктивного элемента, который тоже кажется ненужным. Не похоже, что это лучший (или хороший) способ проверки. Есть идеи?

5
задан Edward 6 October 2011 в 01:33
поделиться