【发布时间】:2013-12-16 07:46:20
【问题描述】:
我正在过滤 XmlNode.innerXML 中的 xml 节点,我得到了带有 xml 元素列表的 innerXML,如下所示:
<runQueryRecord><id>128</id><caption_id>32</caption_id><featurename>DVC.CANYON-NIGHTFALL</featurename><featureprice>0</featureprice><sorting>0</sorting><partnumber></partnumber><imagepath>assets/images/DVC/NIGHTFALL.jpg</imagepath><selected>0</selected><hidden>0</hidden><optcatalogid>0</optcatalogid><advopt_code></advopt_code><qty>1</qty><featurecost>0</featurecost></runQueryRecord>
现在我想搜索在 featurename 标记中具有特定值的节点。然后我必须将其转换为 json。
我的整个代码是:
XmlNode node = advanceAPI.runQuery("----", "--------",sqlquery);
var sb = new StringBuilder();
sb.Append("APIResponse(");
sb.Append(JsonConvert.SerializeObject(node,Newtonsoft.Json.Formatting.Indented));
sb.Append(");");
我尝试了以下方法:
node = node.SelectNodes("//runQueryRecord[contains(featurename,'"+ Request.QueryString["strOption"] +"')]");
但这给了我 XMLNodeList,它不是将它转换为 JSON 以用于 Newtonsoft.Json 的正确格式。
请给出一些关于过滤 XMLNode 节点和获取条件匹配节点的想法。
提前致谢。
【问题讨论】:
标签: .net xml parsing xml-parsing json.net