Как видно из заголовка, наш кеш вывода не работает. Мы только недавно заметили, но когда-то это сработало (можно проверить с помощью скрытой метки времени внизу страницы; мы кэшируем на 3600 секунд, используя varybyparam="*"
). Мы попытались изолировать фрагмент кода, который вызывает проблему (либо страница не входит в кеш, она сразу становится недействительной, либо ключ, используемый для ее кеширования, уникален, и кешированная страница не может / не будет найдена ) и оказывается, что когда мы рекомендуем эту строку:
System.Web.HttpContext.Current.Response.AppendCookie(objCookie)
из класса cookie, кеширование начинает работать отлично!
Мы не уверены, сколько времени не работает кеширование, но есть подозрение, что обновление Microsoft Windows не прошло через QA. Мы проверили на более старом виртуальном сервере без исправлений, что кэширование вывода работает идеально (хотя среда не на 100% похожа на нашу производственную, поэтому есть некоторые сомнения) и что нам не нужно вносить какие-либо изменения в наш код чтобы заставить его работать. Только на наших производственных серверах (Win2k3, x64, но пулы приложений, работающие в 32-битном режиме, IIS 6, .Net 2.0) мы сталкиваемся с этой проблемой.
Дни поиска в Google обнаружили только упоминания о нарушении кеширования вывода для SharePoint после применения MS11-100. Мы наткнулись на кирпичную стену и обратились в службу поддержки Microsoft, но нам было интересно, сталкивался ли кто-нибудь в сообществе с этой проблемой, чем-то подобным или просто есть идеи о том, как ее исправить.
Мы также недавно столкнулись с этой проблемой, та же история, мы никогда не нашли ни одной хорошей статьи по этой проблеме, кроме "http://todd-carter.com".
Мы решили прекратить ненужное использование ".AppendCookie (". Теперь мы проверяем, существует ли Response.Cookie и значение cookie уже существует, не обновляйте Cookie. И при этом начинает работать наш выходной файл.
Пожалуйста, ответьте, если у вас есть другое решение. pankajvtcse@gmail.com