Как проверить, существует ли атрибут в XmlAttributeCollection?
Я проверял тему XmlNode.Attributes в MSDN о методах проверки наличия атрибута XmlNode
с его именем. Ну, нет примера о том, как проверить элемент.
У меня есть что-то вроде:
//some code here...
foreach (XmlNode node in n.SelectNodes("Cities/City"))
{
//is there some method to check an attribute like
bool isCapital = node.Attributes.Exist("IsCapital");
//some code here...
}
Итак, что было бы лучшим подходом для проверки наличия или отсутствия атрибута в каждом node?
Можно ли использовать node.Attribute["IsCapital"]!=null
?
Ответы
Ответ 1
Просто используйте индексатор - если атрибут не существует, индексщик возвращает null
:
bool isCapital = nodes.Attributes["IsCapital"] != null;
Это описано на XmlAttributeCollection.ItemOfProperty (String)
.
XmlAttribute
с указанным именем. Если атрибут не существует, это свойство возвращает null
.