Я столкнулся с проблемой кэширования с Google Chrome и Safari на моей странице в корзине. В корзине есть два раскрывающихся списка. Когда вы нажимаете кнопку проверки после изменения значений в раскрывающихся списках, она фиксирует, что выбрано в списках в базе данных.ASP.NET - кеширование Google Chrome Выбор DropDownList
Немного сложно объяснить неожиданное поведение, поэтому я попытаюсь написать его шаг за шагом с иллюстрацией моей проблемы.
Позволяет сказать первый выпадающий список имеет значение:
- VALUE1
- VALUE2
- Value3
И второй выпадающий список имеет значение:
- DUMBO1
- DUMBO2
- DUMBO3
добавить элемент в моей корзине.
экрана Говорит: VALUE1, DUMBO1
База Говорит: VALUE1, DUMBO1
я ударил Checkout.
базы данных говорит: VALUE1, DUMBO1 (я не могу видеть, выпадающие списки после того, как я ударил проверку, потому что я нахожусь не на странице корзины)
Я нажал кнопку назад.
экрана Говорит: VALUE1, DUMBO1
Database Says: VALUE1, DUMBO1
Я падаю вниз комбо VALUE1 и выберите значение2, VALUE2 выбирается на мгновение, а затем посты сайта назад и VALUE1 повторно выбран в выпадающем списке (от перезагрузки из БД)
моментально экран Говорит: значение2, DUMBO1
База Говорит: VALUE1, DUMBO1
ТО ПОСЛЕ Postback ОТ DROPDOWNLIST_SELECTIONCHANGED EVENT
экрана Говорит: VALUE1, DUMBO1
База Говорит: VALUE1, DUMBO1
Hit Проверять, выписываться.
База Говорит VALUE1, DUMBO1 (я не могу видеть, выпадающие списки после того, как я ударил проверку, потому что я нахожусь не на странице корзины)
ВЕРНУТЬСЯ.
экран Говорит: VALUE2, DUMBO1
База Говорит: VALUE1, DUMBO1
Так что кажется, что это запоминание моего выбора VALUE2 даже если он спрыгнул обратно VALUE1, прежде чем я проверил.
Это проблема кэширования, однако у меня есть некоторый код без кеша, чтобы предотвратить кеширование этой страницы, которая отлично работает в Firefox и Internet Explorer, но, похоже, не работает в Chrome и Safari. Я в основном возвращаюсь в заголовки для страницы корзины: no-cache, no-store и должен-revalidate, чтобы попытаться предотвратить кеширование, но на основе этого сценария, похоже, все равно кэширует страницу и не перезагружает ее, когда я нажмите кнопку «Назад».
Я открыт для любых решений или предложений на данный момент. Благодаря!
Да, я устанавливаю значения выпадающего списка на странице Load, и я устанавливаю значения только в том случае, если это не обратная передача, как вы предлагали. – Fake
Можете ли вы сварить это до очень простого теста (у вас было много шагов) с кодом, и тогда люди смогут лучше воспроизвести его. – Kinlan