Данные кэширования Internet Explorer, возвращаемые из БД - PullRequest
2 голосов
/ 17 ноября 2011

Итак, я столкнулся с этой странной проблемой. Когда я работаю локально и запускаю свое приложение в Firefox и IE, все работает нормально.

Когда я запускаю это приложение в нашей среде интеграции, Firefox не видит эту проблему, а IE видит. По сути, мы даем нашим пользователям возможность сохранять новую строку в таблице базы данных с помощью вызова AJAX . Вызов AJAX осуществляется через JQuery , поглощается нашим контроллером в C #, а затем некоторая информация отправляется в proc и сохраняется в таблице DB. Как только это произойдет, мы все сможем убедиться, что эти данные точно сохранены.

В приложении также есть функция просмотра таблицы, которая в основном имитирует таблицу, в которой мы только что сохранили наши данные, также доступ к которой осуществляется через процедуру (select вместо insert / update). Теперь, когда это просматривается сразу после вставки новой строки, Firefox показывает новую строку в веб-таблице, а IE - нет - даже если оба работают локально, в интеграции работает только Firefox - так странно.

Теперь, если пользователь вставляет новую строку, а затем очищает свой кэш IE, он может видеть, что новая строка появляется, когда он щелкает ссылку.

Итак, мои вопросы:

1) Должен ли я сосредоточиться на способе, возможно, в JQuery, очищать кеш браузера каждый раз, когда пользователь щелкает ссылку для просмотра сохраненных строк?

2) Почему это работает в IE локально, а не на сервере интеграции?

3) Есть ли что-нибудь на стороне сервера, которое я могу сделать в .NET, например, возможно, свойство, которое я могу установить в методах контроллера, которые одновременно устанавливают / просматривают эти строки, в которых IE игнорирует кэш, или что-то в этом роде?

Спасибо, ребята.

Ответы [ 2 ]

1 голос
/ 17 ноября 2011

Установите для свойства cache вызова ajax значение false, как описано здесь http://api.jquery.com/jQuery.ajax/

0 голосов
/ 17 ноября 2011

Просто используйте глагол POST для тех запросов, которые кэшируются.IE кэширует GET, но POST в порядке.
Для этого добавьте атрибут [HttpPost] в свои действия.

...