Я пытаюсь прочитать несколько атрибутов из XML-файла с помощью XMLNode, но в зависимости от элемента атрибут может не существовать. Если атрибут не существует, если я попытаюсь прочитать его в памяти, он выдаст нулевое исключение. Я нашел один способ проверить, возвращает ли атрибут null:
var temp = xn.Attributes["name"].Value;
if (temp == null)
{ txtbxName.Text = ""; }
else
{ txtbxName.Text = temp; }
Кажется, что это будет работать для одного экземпляра, но если я проверяю 20 атрибутов, которые могут не существовать, я надеюсь, что есть способ настроить метод, которым я могу передать значение, чтобы проверить, равно ли оно нулю. Из того, что я прочитал, вы не можете передать переменную, поскольку она инициализирована локально, но есть ли способ настроить тест, чтобы передать потенциально нулевое значение для тестирования, а затем вернуть значение, если оно не равно нулю, и вернуть "", если это нуль? Возможно ли это, или мне нужно будет тестировать каждое значение индивидуально, как указано выше?
XmlDocument
?Linq2XML
- лучший вариант. - person Hamlet Hakobyan   schedule 01.04.2014