我有像这样的xml
<root>
<text>My test is 5 > 2 & 10 < 12</text>
</root>
当我将其转换为xElement
时var xe = XElement.Parse(xml);
我收到错误
如果xml内容&amp;所以我收到此错误«解析EntityName时发生错误»
如果xml内容&gt;所以我收到此错误«名称不能以'&lt;'开头字符,十六进制值0x3C。»
答案 0 :(得分:7)
我有像这样的xml
不,那不是XML。这是一些随机的字符串。
您无法使用XElement解析无效的XML。要使用XML解析器(如XElement或XDocument),首先需要有一个有效的XML:
<root>
<text>My test is 5 > 2 & 10 < 12</text>
</root>
所以请继续告知作者这个字符串,他需要修复它以获得可以解析的有效XML。
答案 1 :(得分:1)
那是因为XML无效,无论谁生成它都是负责任的。你应该和他们讨论如何修复它,因为如果那是不可能的,那么你就会感受到很多痛苦。
具体而言,字符&
,<
和>
(以及属性中的"
或'
)应该是相应的{{3 }}:
<root>
<text>My test is 5 > 2 & 10 < 12</text>
</root>