您好我已经查看了几个答案,似乎没有任何问题可以解决我的问题(或者我可能做错了一些事情)我有以下的xml并且想要选择这个'不会伤害测验中的元素。
这是我试过的代码
xd = XDocument.Load(XmlFile);
var node = xd.XPathSelectElements("/Math/Quiz[QuizTitle ='This 'wont hurt']");
它没有用,因为它说我有一个无效的令牌,我查了一下,发现它是'导致问题,但没有一个逃逸方法似乎工作,我找到了,想法或帮助将花费在决定提出问题之前,已经有很多时间处理这个愚蠢的问题
XML
<Math>
<Quiz>
<QuizTitle>This 'wont hurt</QuizTitle>
<Questions>20</Questions>
<Time>15/</Time>
</Quiz>
<Quiz>
<QuizTitle>Test</QuizTitle>
<Questions>1</Questions>
<Time>14/</Time>
</Quiz>
</Math>
答案 0 :(得分:1)
使用以下XPath
:
xd.XPathSelectElements("/Math/Quiz[QuizTitle=\"This 'wont hurt\"]")
不同之处在于,它使用"
代替'
来设置文字内容,这就是为什么您可以在文本中使用'
而不会出现任何问题。
返回您需要的内容:
<Quiz>
<QuizTitle>This 'wont hurt</QuizTitle>
<Questions>20</Questions>
<Time>15/</Time>
</Quiz>