Есть ли лучший способ извлечь Raw XML из URL-адреса, чем WebClient или HttpWebRequest? [.СЕТЬ] - PullRequest
0 голосов
/ 26 мая 2010

Я работаю над приложением геокодирования, где я помещаю адрес в URL и получаю XML. Мне нужен полный XML-ответ для этого проекта. Есть ли другой класс для загрузки XML с веб-сайта, который может быть быстрее, чем использование WebClient или HttpWebRequest? Можно ли использовать XMLReader для получения полного XML без манипулирования строками, и это будет быстрее и / или более эффективно?

Ответы [ 2 ]

2 голосов
/ 26 мая 2010

Ну, вы можете использовать XmlReader.Create(uri) - но это, вероятно, будет использовать HttpWebRequest под капотом, я должен подумать. Я сомневаюсь, что есть совершенно отдельная реализация HTTP-клиента. Одно из преимуществ загрузки сначала, а затем синтаксического анализа заключается в том, что если с документом что-то не так, проще записать все, если вы сначала поместили его в память.

Кроме того, использование отдельного HttpWebRequest (или WebClient) дает вам больший контроль над прокси-серверами, обработкой перенаправления, аутентификацией и т. Д. Это может или не может иметь значение для вашего варианта использования, конечно.

Вы пробовали кодировать это самым простым способом, каким только можете придумать, а затем обнаружили узкое место в производительности? Я ожидаю, что основная проблема будет в сети, а не в обработке локального клиента.

1 голос
/ 26 мая 2010

Метод XDocument.Load также может помочь, но я действительно сомневаюсь, что он будет быстрее, чем любая из других альтернатив. Это очень удобно, хотя! :)

...