0
我正在解析一个Xml文件。我在C#2.0中如何使用更合理的XPathNodeIterator
MoveNext()
遇到了麻烦。关于C#中XPathNodeIterator问题的问题#
我的代码,因为这,
while (it.MoveNext())
{
string str = it.Current.GetAttribute("id", it.Current.NamespaceURI);
it.Current.MoveToChild("item", "");
// do someting....
// My XMl file is a complex Xml file. I must Move to multi layer Child with *MoveToChild()*.
// After that, I must add several *MoveToParent()* in different Layers to make sure the *it* still meet for the use of while loop.
// I think it doesn't make sense like this.
// Some time. the *it* can't still direct to my original layer. While-Loop doesn't work well.
}
我试图声明一个新创建XPathNodeIterator对象tempIt因为这样,
while (it.MoveNext())
{
XPathNodeIterator tempIt;
tempIt= it;
string str = tempIt.Current.GetAttribute("id", tempIt.Current.NamespaceURI);
tempIt.Current.MoveToChild("item", "");
// Now I chech *it* on here, I found the *it* also changed it's *current* and "position". and it's count also changed.
// I don't know why.
}
我怎样才能解决这个问题?
赞赏您的意见和建议。
您已经创建创建XPathNodeIterator,然后你使用DOM风格的导航 - 使用选择方法和学习的XPath。你只需要一个迭代器。 – annakata 2010-12-23 09:35:08