创建XPathDocument时为什么会出现Web异常?

时间:2008-10-27 12:57:51

标签: exception xpathdocument

使用引用的DTD创建XPathDocument有时会引发Web异常。为什么呢?

3 个答案:

答案 0 :(得分:1)

您可以编写自定义XmlUrlResolver然后忽略 远程DTD。另外,我相信你可以在XmlTextReader上设置使用XmlResolver = null。

答案 1 :(得分:1)

对于那些感兴趣的人我找到了一个解决方法来禁用dtd检查

XmlReaderSettings settings = new XmlReaderSettings();
 settings.XmlResolver = null;
 settings.ProhibitDtd = false;

 var xmlReader = XmlTextReader.Create(new StringReader(xmlString),settings);
 XPathDocument xpathDoc = new XPathDocument(xmlReader);

答案 2 :(得分:0)

请参阅http://todotnet.com/archive/2006/07/27/8248.aspx

  因为在建设中   XPathDocument,有一个http GET   命令,看它是否可以访问   DTD。它没有做任何事情   DTD。这是为了以防万一。所以虽然   XPathDocument最初设置为   是一个更快的替代品   XmlDocument,你会有的   http请求的额外开销   这需要解决。想像   那台服务器在另一边   全球!