读取带有属性内部标记的XML时出错

时间:2016-10-26 12:59:18

标签: asp.net xml asp.net-mvc

我正在使用此代码阅读一些XML文件(我正在使用ASP MVC)

var httpWebRequest = (HttpWebRequest)WebRequest.Create(requestUrl);
httpWebRequest.ContentType = "application/xml";
httpWebRequest.Method = "GET";

var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
    var result = streamReader.ReadToEnd();
    XmlDocument doc = new XmlDocument();
    doc.LoadXml(result);

其中requestUrl是我传递给代码的一些Url。 Url包含XML,我无法访问它。

这很好用。问题是,我正在阅读的XML文件之一有< IMG>标签里面有另一个标签(问题出在alt属性中,还有其他标签,但我省略了它们):

  

< img alt =“:< p>我这里有一些文字< / p>” />

由于这个原因,我无法读到这个< p为H.里面< IMG取代。当我尝试时,我有一个XML异常。我认为这是XML中的错误,但我想知道是否有某种方法可以阅读它。

2 个答案:

答案 0 :(得分:0)

试试这个

< img alt="Alexandrino Alencar, da Odebrecht" />

答案 1 :(得分:0)

而不是<&amp; >应使用数字字符引用&#60;&amp; &#62;否则解析器会在看到<两次时抛出异常。

如果您没有生成它们,那么也许您可以根据XML here中的特殊字符对它们进行预处理并将它们转换为数字字符引用。