Exception 为什么在创建XPathDocument时会出现web异常?

Exception 为什么在创建XPathDocument时会出现web异常?,exception,xpathdocument,Exception,Xpathdocument,使用引用的DTD创建XPathDocument有时会引发web异常。为什么?请参见 因为在建筑方面, XPathDocument,有一个http GET 命令以查看它是否可以访问 DTD。它和这件事没有任何关系 DTD。这只是以防万一。那么一会儿 XPathDocument最初设置为 成为一个更快的替代品 XmlDocument,您将拥有 http请求的额外开销 这需要解决。想象 该服务器位于服务器的另一端 地球 您可以编写自定义XmlUrlResolver,然后忽略 远程DTD。另外,我相信您

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

请参见

因为在建筑方面, XPathDocument,有一个http GET 命令以查看它是否可以访问 DTD。它和这件事没有任何关系 DTD。这只是以防万一。那么一会儿 XPathDocument最初设置为 成为一个更快的替代品 XmlDocument,您将拥有 http请求的额外开销 这需要解决。想象 该服务器位于服务器的另一端 地球


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

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

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

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

但MSDN应明确指出这可能发生。查看XPathDocument,您不知道它会在web上查找DTD。为什么会抛出异常?如果不需要DTD-脱机工作,不是吗?无论如何,谢谢你的建议,我下次会试试的!