Как заставить HttpWebRequest использовать кеш в среде ASP.NET?

В моем приложении ASP.NET я использую HttpWebRequest для извлечения внешних ресурсов, которые я хотел бы кэшировать. Рассмотрим следующий код:

var req = WebRequest.Create("http://google.com/");
req.CachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.CacheIfAvailable);
var resp = req.GetResponse();
Console.WriteLine(resp.IsFromCache);
var answ = (new StreamReader(resp.GetResponseStream())).ReadToEnd();
Console.WriteLine(answ.Length);

HttpWebRequest использует кеш IE, поэтому, когда я запускаю его как обычный пользователь (в крошечном тестовом приложении cmd), данные кэшируются в%userprofile%\Local Settings\Temporary Internet Files и следующие ответы читаются из кеша.

Я думал, что когда такой код запускается внутри приложения ASP.NET, данные будут кэшироваться в...\ASPNET\Local Settings\Temporary Internet Files но это не так, и кеш никогда не используется.

Что я делаю не так? Как заставить HttpWebRequest использовать кеш в среде ASP.NET?

Ответы на вопрос(0)

Ваш ответ на вопрос