2011-12-14 3 views
0

Я работаю с ASP.NET и VB.NET.Некоторые пользовательские элементы управления не загружаются при нажатии кнопки «Назад»

У меня есть страница, которая содержит 5 элементов управления пользователя. Сама страница ничего не делает, она просто представляет пользовательские элементы управления пользователю.

Пользователь контролирует работу отлично, когда я нахожусь на странице, или когда я обновляюсь, но когда я перехожу на другую страницу и нажимаю «Назад», отображаются только два моих пользовательских элемента управления, и они не работают, как они должны!

Краткое описание управления:

  • 2 управления, которые выглядят, если пользователь должен создать что-то и показывает возможность сделать это. (Идет к БД)
  • 2 управления показывают обзор, если это необходимо (идет к БД)
  • 1 управления выглядит, если пользователь является администратором (не идет в БД, но выглядит в SecurityContext)

Так что же происходит:

первые 3 управления не отображается 1 управления показывает его состояние по умолчанию (хотя в зависимости от пользователя не должно быть) управление администратором всегда показывает связь администратора, даже если пользователь не является администратором

Я пробовал смотреть на кеширование (отключить, включить), я пробовал обманывать видоискатель, я пытался использовать placeholder, page_init, ..

Ничего похожего не работает, и мне бы хотелось, это на самом деле работает, потому что я уверен, что пользователи будут делать это много. Когда я обновляю, все работает так, как должно снова, потому что сервер снова связывается.

Что мне делать? :/

Некоторый код:

<pm:MenuA ID="MenuA" runat="server" /> 
<pmm:MultiStepMenuA ID="MultiStepMenuA" runat="server" /> 
<rm:MenuB ID="MenuB" runat="server" /> 
<mm:MenuC ID="MenuC" runat="server" /> 
<br /> 
<am:AdminMenu ID="AdminMenu" runat="server" /> 

ВАЖНО UPDATE: Я не имею эту проблему с Firefox, только IE9:/

ответ

1

Blame Internet Explorer ..

По-видимому, он продолжал использовать старую версию моего сайта «для повышения скорости». Я удалил свою историю, и я снял флажок «Сохранить любимые данные веб-сайта».

После этого все получилось. Старшая страница исчезла, и она была заменена более новой версией.

В любом случае, я надеюсь, что это может помочь кому-то еще!

0

Самым простым решением этой проблемы является добавление следующую директиву в верхней части страницы, чтобы предотвратить IE или IIS кэшировать эту страницу:

<%@ OutputCache location="None" %> 

Вы можете применить этот параметр глобально для всех страниц, добавляя следующее к части system.web вашей сети.config:

<caching> 
    <outputCache enableOutputCache="false" enableFragmentCache="false" omitVaryStar="true" /> 
    </caching> 
Смежные вопросы