Создание XPathDocument со ссылкой на DTD иногда вызывает веб-исключение. Зачем?Почему я получаю исключение в Интернете при создании XPathDocument?
1
A
ответ
0
См http://todotnet.com/archive/2006/07/27/8248.aspx
Поскольку в строительстве XPathDocument, есть HTTP GET команды, чтобы увидеть, если он может получить доступ к DTD. Это ничего не делает с DTD . Это на всякий случай. Итак, в то время как XPathDocument изначально настроен на , будет более быстрой альтернативой XmlDocument, у вас будут дополнительные дополнительные служебные данные HTTP-запроса , которые необходимо решить. Представьте , что сервер находится на другой стороне земного шара!
1
Вы можете написать собственный XmlUrlResolver, а затем проигнорировать дистанционное DTD . Кроме того, я считаю, что вы можете установить XmlResolver = null в XmlTextReader.
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);
Смежные вопросы
- 1. Почему я получаю исключение NullReferenceException при создании экземпляра System.Net.Http.HttpClient()?
- 2. Почему я получаю исключение Argument при динамическом создании обработчика событий?
- 3. Почему я получаю исключение NullPointerException при создании компонента Swing?
- 4. Почему я получаю исключение на своем сервере при создании TIFF?
- 5. Почему я получаю ошибку при создании объекта?
- 6. Почему я получаю исключение XamlParseException?
- 7. Почему я получаю исключение NullReferenceException?
- 8. Почему я получаю исключение InvalidOperationException?
- 9. Почему я получаю исключение DuplicateNameException?
- 10. Почему я получаю исключение: InvalidOperationException?
- 11. Почему я получаю исключение NamingContextPackage.NotFound?
- 12. Почему я получаю исключение OptimisticLockException?
- 13. Почему я получаю исключение класса?
- 14. Почему я получаю исключение ArrayIndexOutofBoundsException?
- 15. Почему я получаю исключение: InvalidOperationException?
- 16. Почему я получаю исключение ArgumentException?
- 17. Почему я получаю исключение CircularDependencyException?
- 18. Почему я получаю исключение IllegalFormatConversionException?
- 19. Почему я получаю исключение java.io.NotSerializableException?
- 20. Почему я получаю исключение java.lang.ArrayIndexOutOfBoundsException?
- 21. Почему я получаю исключение отображения?
- 22. Почему я получаю исключение NoSuchElementException?
- 23. Я получаю исключение IOException при создании инструмента Roofline. Зачем?
- 24. Почему я получаю исключение NullPointerException?
- 25. Почему я получаю исключение Soap?
- 26. Почему я получаю исключение класса?
- 27. Почему я получаю исключение IllegalMonitorStateException?
- 28. Почему я получаю исключение CancelledKeyException?
- 29. Почему я получаю исключение NoClassDefFoundError?
- 30. Почему я получаю фатальное исключение?
Но MSDN должен четко указать это может произойти. Глядя на XPathDocument, вы не можете сказать, что он будет искать DTD в Интернете. И почему исключение выбрано? Если DTD не нужен - работает офлайн, не так ли? Спасибо за предложения в любом случае - я попробую их в следующий раз! – Goran 2008-10-28 07:22:31