XmlDocument的getElementById()返回null
初学C#,今天遇到了一个问题,请高手指点
我用一个XmlDocument对象加载了一个xml文件,然后用createElement()方法生成了一些新结点<Item>放到里面,
但是奇怪的事情发生了
用getElementById()取原来文件中有的元素时,能取到
用getElementById()取动态新生成的元素时,返回null
Xml文件格式如下:
<!DOCTYPE Category [ <!ELEMENT Category ANY> <!ELEMENT Item EMPTY> <!ATTLIST Category id ID #REQUIRED> <!ATTLIST Category name CDATA #IMPLIED> <!ATTLIST Category comment CDATA #IMPLIED> <!ATTLIST Category text CDATA #IMPLIED> <!ATTLIST Category count CDATA #IMPLIED> <!ATTLIST Item id ID #REQUIRED> <!ATTLIST Item name CDATA #IMPLIED> <!ATTLIST Item count CDATA #IMPLIED>]><Category id="10000"> <Category id="11000"> </Category></Category>
XmlElement element = doc.CreateElement("ITEM", doc.NamespaceURI); element.SetAttribute("id", id); element.SetAttribute("name", name); element.SetAttribute("text", name); parent.AppendChild(element); doc.getElementById(id); //这里返回null