检索值为<! - [CDATA [12345]] - >的XElement的值

时间:2014-06-13 01:09:44

标签: c# .net xml cdata

如果我有以下xml元素:

 <TEST><![CDATA[12345]]></TEST>

我正在尝试使用以下代码提取<TEST> xml元素的值:

  XElement elem = documet.XPathSelectElement(xpath_to_TEST); //xpath_to_TEST is the actual xpath to that element
  var value = elem.value //value of <TEST>

上面代码的问题是value变量包含12345,其中我希望将<TEST>的整个值作为字符串,包括<![CDATA[12345]]>等CDATA标记。<​​/ p >

这可能吗?

1 个答案:

答案 0 :(得分:3)

尝试将元素内容视为XCData节点,例如:

XElement elem = documet.XPathSelectElement(xpath_to_TEST);
XCData xcdata = (XCData)elem.FirstNode;
Console.WriteLine(xcdata.ToString());
//above prints :
//<![CDATA[12345]]>

相关问题:How to do edit text content keeping it in a CDATA block?