如果没有这样的元素,则为XmlNode索引器结果

时间:2013-05-30 23:33:05

标签: c# xml indexing

我正在编写需要从具有给定名称的节点获取第一个元素的代码,或者只需使用XmlNode.Item索引器。我注意到的问题是文档方便地失败来指定如果此节点中没有这样的子元素会发生什么。众所周知,Dictionary会引发异常,而XmlAttributeCollection非常友好地提到它将返回null,那么我应该准备哪个例外或null

1 个答案:

答案 0 :(得分:1)

使用一些代码来测试它,它似乎返回null。这是我使用的代码片段。

const string xmlData = @"<?xml version=""1.0"" encoding=""utf-16""?>
<testRoot xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
    <ExampleData isData=""true"" testString=""Hello World!"">
        content
    </ExampleData>
</testRoot>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xmlData);
var item = doc["foo"];
Assert.IsNull(item);