特定の名前のノードから最初の要素を取得する必要があるコードを書いているか、単にXmlNode.Item
インデクサーを使用しています。私が気付いた問題は、このノードにそのような子要素がない場合に何が起こるかをドキュメントが都合よく指定していないことです。Dictionary
が例外をスローすることが知られており、XmlAttributeCollection
親切にも が返されることを述べているnull
ので、例外と ? のどちらに備えるべきnull
ですか?
1 に答える
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);
于 2013-05-30T23:33:04.673 に答える