2009-11-05 6 views
0

VS2005, ASP.NET, C#, IIS6Проблемы с кэшем ASP.NET

Привет друзья, У меня есть главная страница, разделенная на три секции т.е. заголовка, деталь, сноску.

Раздел заголовка содержит элемент управления веб-пользователя с контейнером вкладок AJAX. Мы показываем или скрываем вкладки в соответствии с пользовательскими превалированиями. Изначально активна только одна вкладка, показывающая пользователю вход в систему. Когда пользователь регистрируется на других вкладках, активируется.

Я использовал <% @ OutputCache Duration = "120" VaryByParam = "none"%> в пределах моего пользовательского элемента управления. Когда пользователь регистрируется в NullReferenceException, создается один из методов внутри этого элемента управления.

Когда я удаляю OutputCache, все работает нормально.

Может ли кто-нибудь вести меня, что мне делать?

Заранее спасибо

+1

Можете ли вы опубликовать код, вызывающий ошибку? В противном случае трудно понять, в чем проблема. – pmarflee

+0

Ошибка генерации на объекте этого веб-пользователя. – IrfanRaza

+1

Что делает этот контроль? Почему вы думаете, что это связано с кешированием? Может быть, вы можете предоставить немного больше деталей/примеров того, что вы пытаетесь сделать? – Ivo

ответ

0

«Легкий» способ исправить это, чтобы проверить, если значение равно нулю, если он пустой его создания.

Лучшим способом было бы выяснить, почему оно равно нулю.

Одна из возможностей заключается в том, что в первый раз, когда эта страница называется, есть параметр, который определяет, что один из элементов управления не должен быть создан. Второй раз, когда он называется, вызывается с параметром, который говорит, что требуется controll, но он использует кешированную версию страницы, которая не имеет этого элемента управления.

+0

Но если я удалю оператор OutputCache, тогда он отлично работает. – IrfanRaza

Смежные вопросы