我编写了 ac# 函数来解析 XML 流。我的 XML 可以有多个节点。
例子 :
<Stream>
<One>nnn</One>
<Two>iii</Two>
<Three>jjj</Three>
</Stream>
但有时,它是:
<Stream>
<Two>iii</Two>
</Stream>
这是我的 C# 代码:
var XML = from item in XElement.Parse(strXMLStream).Descendants("Stream") select item;
string strOne = string.Empty;
string strTwo = string.Empty;
string strThree = string.Empty;
if ((item.Element("One").Value != "")
{
strOne = item.Element("One").Value;
}
if ((item.Element("Two").Value != "")
{
strTwo = item.Element("Two").Value;
}
if ((item.Element("Three").Value != "")
{
strThree = item.Element("Three").Value;
}
使用此代码,如果我的 Stream 已满(Node On、2 和 3),就没有问题!但是,如果我的 Stream 只有节点“Two”,我会得到一个NullReferenceException
.
有没有办法避免这个异常(我不能改变我的流)。
非常感谢 :)