Загрузка из кеша документа XML
От: justas_ms  
Дата: 29.10.10 11:05
Оценка:
Добрый день

При загрузке XML документа из кеша, получаю ошибку "Отсутствует корневой элемент".
На вид отличий нет, но насколько я понимаю, компилятор считает подгружаемое — фрагментом.



        {
             string requestName = searchText;
             HttpWebResponse response;
             
             if (Cache[requestName] == null) //
             {
                 string requestString = "http://...";

                 HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(requestString);
                 response = (HttpWebResponse)request.GetResponse();
                 Cache[requestName] = response;
              }

             else
             {
                 response = Cache[requestName] as HttpWebResponse; //при загрузке из кеша

             }

             xdocument.Load(response.GetResponseStream()); //ошибка
         }


Подскажите, как должно быть.
Заранее, Спасибо.
Re: Загрузка из кеша документа XML
От: Аноним  
Дата: 29.10.10 13:00
Оценка: 3 (1)
Здравствуйте, justas_ms, Вы писали:

_>Добрый день


_>При загрузке XML документа из кеша, получаю ошибку "Отсутствует корневой элемент".

_>На вид отличий нет, но насколько я понимаю, компилятор считает подгружаемое — фрагментом.

_>Подскажите, как должно быть.

_>Заранее, Спасибо.

Думаю нужно кэшировать string с XML текстом, так как то более понятно выглядит чего происходит. наверно GetResponseStream() возвращает поток который читается и позиция встаёт на конец. при повторном запуске читать нечего.
Re[2]: Загрузка из кеша документа XML
От: justas_ms  
Дата: 29.10.10 14:21
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Думаю нужно кэшировать string с XML текстом, так как то более понятно выглядит чего происходит. наверно GetResponseStream() возвращает поток который читается и позиция встаёт на конец. при повторном запуске читать нечего.


Спасибо, так и сделал. Единственное что, XmlDocument надо каждый раз очищать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.