Как кэшировать XML-URL? - PullRequest
       4

Как кэшировать XML-URL?

0 голосов
/ 11 августа 2010

Я получаю строку XML через URL.Мой код прекрасно работает, но я не знаю, как добавить к нему кеширование.Я не уверен, могу ли я кэшировать потоки XML или это правильный подход.Какой лучший способ добавить кеширование здесь?

XmlTextReader xmlTextReader = new XmlTextReader(this.RssUrl);
XmlDataDocument xdoc1 = new XmlDataDocument();
xdoc1.DataSet.ReadXml(xmlTextReader, XmlReadMode.InferSchema);
return xdoc1.DataSet.Tables["item"];

Ответы [ 2 ]

0 голосов
/ 12 августа 2010

Кэширует весь XmlDataDocument.Если вы кэшируете только XML, вам придется все время его анализировать.

0 голосов
/ 12 августа 2010

Вы можете сохранить XML вместе с временной меткой, и если вам нужно перечитать XML, вы будете читать из сохраненного XML, пока временная метка не станет старше, чем предварительно сконфигурированное значение. Большинство RSS-ридеров делают это, чтобы избежать переполнения RSS-сервиса запросами.

Или, если вы управляете RSSUrl, вы можете реализовать там кэширование. При этом будет использоваться HTTP-кэширование и тот факт, что веб-сервер может вернуть значение 304 Не изменено, если в канал не добавлены новые элементы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...