如何按值查询XML (C#)

来源:百度知道 编辑:UC知道 时间:2024/06/17 04:46:58
<video>
<itme>DVD</itme>
<itme>VCD</itme>
<itme>MP3</itme>
</video>

XmlNode xn = web._info.SelectSingleNode("Web/Video");

想通过XmlNode来判断子节点中是否有一个值为DVD的节点。
我暂时用的方法是:
xn.InnerXml.Contains("<Itme>" + dvd + "</Itme>")
但总觉得这个方法不是很好。请问有没有其他更好的方法

XmlNode root = document.SelectSingleNode("//itme[contains(text(),\"DVD\"]");
不是很好么?功能也很强大,具体XPATH语句:
http://user.qzone.qq.com/365581856/infocenter?ptlang=2052&ADUIN=365581856&ADSESSION=1257911186&ADTAG=CLIENT.QQ.2587_Mysrv.0
因为你的需求简单,如果是十分复杂的XML查询,可以借助一些成熟的XPATH组件。

string xml = "<filelist>" +
"<item acode=\"109000_109001\" filestyle=\"审计报告\" filename=\"审计报告.doc\" filepath=\"aditemplates\\0\\common\\审计报告.doc\">2009年报审计报告(制度)</item>" +
"<item acode=\"109100_109101\" filestyle=\"审计报告\" filename=\"审计报告.doc\" filepath=\&quo