21

我正在检查MSDN 上的XmlNode.Attributes 主题,了解检查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.Attribute["IsCapital"]!=null吗?

4

1 回答 1

42

只需使用索引器 - 如果属性不存在,则索引器返回null

bool isCapital = nodes.Attributes["IsCapital"] != null;

这记录在XmlAttributeCollection.ItemOfProperty (String).

具有XmlAttribute指定名称的 。如果该属性不存在,则此属性返回null

于 2011-11-16T13:06:08.320 回答