C# xpath 查询问题

pengchengwanli 2009-08-28 08:24:10
我要查询 :
条件:title='Harry Potter' 一定要注意,title值有单引号如何处理
目标:book的属性@category值是多少


<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book category="COOKING">
<title lang="en">'Everyday Italian'</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>

<book category="CHILDREN">
<title lang="en">'Harry Potter'</title>
<title lang="en">Everyday Italian</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>



已经有的方法

using System.Xml;
using System.Xml.XPath;

public string GetData(string strsql)
{
XPathNavigator nav;
XPathDocument docNav;
XPathNodeIterator NodeIter;

string strRetrun = string.Empty;
nav = docNav.CreateNavigator();
strExpression = "";//在这儿写查询语句
MessageBox.Show(strExpression);
NodeIter = nav.Select(strExpression);
while (NodeIter.MoveNext())
{
strRetrun += NodeIter.Current.Value;
};
return strRetrun;
}


或者给更好的建议
...全文
100 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hul19830820 2009-08-28
  • 打赏
  • 举报
回复
光接分 行不?
pengchengwanli 2009-08-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zgke 的回复:]
            string _Path = "\"'Harry Potter'\"";

            XmlNodeList _List = _Document.SelectNodes("bookstore/book/title[.="+_Path+"]");
[/Quote]

首先,谢谢你,\\

上面说的单引号出现在字符串中的位置是随机的,
zgke 2009-08-28
  • 打赏
  • 举报
回复
string _Path = "\"'Harry Potter'\"";

XmlNodeList _List = _Document.SelectNodes("bookstore/book/title[.="+_Path+"]");
pengchengwanli 2009-08-28
  • 打赏
  • 举报
回复
实在是没分了,真头疼啊,呵呵,大家莫怪

110,556

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧