我有一个XPathNodeIterator xpProducts,它包含这样的XML
<estocklevel>0</estocklevel>
<weightingram>0</weightingram>
<unit></unit>
<volume>0</volume>
<discountgroup></discountgroup>
<manufactor>31862244</manufactor>
<deliverydate>1900-01-01T00:00:00</deliverydate>
<dayscreated extra="dayscreated">41489</dayscreated>
现在我想用字符串中的每个节点数据,我尝试过像这样的事情
string strProductID = xpProducts.Current.Select("/manufactor");
但它会抛出错误
Error 3 Cannot implicitly convert type 'System.Xml.XPath.XPathNodeIterator' to 'string' D:\Projects\20-06-2013-Files\App_Code\DataFetcher.cs 55 28 D:\Projects\20-06-2013-Files\
是否无法从XPathNodeIterator中获取字符串数据?
答案 0 :(得分:1)
为了获取字符串数据,您需要一个XPathNavigator:
string strProductID = null;
XPathNavigator navProductID = xpProducts.Current.SelectSingleNode("manufactor");
if(navProductID != null)
{
strProductID = navProductID.Value;
}
我还建议使用foreach
循环,而不是MoveNext()
和Current
。