C# 向现有xml元素添加节点
尝试将节点附加到xml文档中的现有元素时出现此错误。错误为:对象引用未设置为对象的实例C# 向现有xml元素添加节点,c#,xml,nullreferenceexception,C#,Xml,Nullreferenceexception,尝试将节点附加到xml文档中的现有元素时出现此错误。错误为:对象引用未设置为对象的实例 <houses> <house windowsc="three"> <wind>0</wind> <windows> </windows> </house> </houses> 要使用SelectSingleNode: XmlNode xhousing = xDoc.SelectS
<houses>
<house windowsc="three">
<wind>0</wind>
<windows>
</windows>
</house>
</houses>
要使用SelectSingleNode:
XmlNode xhousing = xDoc.SelectSingleNode(@"//house[@windowsc='three']/windows");
XmlNode xName = xDoc.CreateElement("Name");
xName.InnerText = "hi";
xhousing.AppendChild(xName);
调试器说了什么?您可以使用LINQ to XML吗?发生了“System.NullReferenceException”类型的异常附加信息:对象引用未设置为对象的实例。您的
xhousing为null
,您的xpath没有获得node@Josh看起来xhousing
是null
注意//house不同于/houses/house。
XmlNode xhousing = xDoc.SelectSingleNode(@"//house[@windowsc='three']/windows");
XmlNode xName = xDoc.CreateElement("Name");
xName.InnerText = "hi";
xhousing.AppendChild(xName);