Использование SavePageStateToPersistenceMedium () для главной страницы ASP.NET - PullRequest
0 голосов
/ 30 октября 2009

VS 2005, ASP.NET с C #, Windows XP, II6

Привет

Пожалуйста, обратитесь к теме http://www.codeproject.com/KB/viewstate/SaveViewState.aspx. Эта тема демонстрирует, как вы можете сохранить ViewState в файловой системе через сервер, чтобы сделать ViewState очень маленьким при переходах. Автор создал класс BasePage, унаследовав System.Web.UI.Page, и все страницы являются производными от этого класса.

Сайт, который я разрабатываю, использует мастер-страницу, и все страницы получены из этой мастер-страницы. Когда я пытаюсь переопределить SavePageStateToPersistenceMedium (), генерируется ошибка компиляции, указывающая, что в System.Web.UI.MasterPage нет такого метода для переопределения.

У кого-нибудь из вас есть идея, как я могу решить эту проблему.

Ваша помощь высоко ценится.

Спасибо и С уважением Ирфан

Ответы [ 2 ]

2 голосов
/ 11 ноября 2009

Я нашел решение. На самом деле страница aspx является производной от System.Web.UI.Page, а главная страница - от класса Control. Там метод SavePageStateToPersistenceMedium () доступен только на странице aspx, а не на главной странице. Вы должны переопределить этот метод на каждой странице aspx или создать свой собственный базовый класс, производный от класса Page, а затем переопределить метод.

1 голос
/ 11 ноября 2009

Использование переопределения PageStatePersister было бы более простым способом изменить механизм сохранения ViewState на всех страницах без использования базового класса.

Милан Негован написал хорошее сообщение в блоге о различных параметрах, использующих PageStatePersister, с некоторыми дополнительными ссылками.

...