MF_MiEK:
M234
vityanya
Так вы решили проблему или нет?http://www.developer.uz - Сайт, посвященный программированию в Узбекистане
Нет не решил.
Пока отключил это хранние на сервере.
Что конечно сразу подкосило произв-ть.
ВьюСтэйт у меня большой и я не могу его меньше сделать.
В общем я не пойму почему ПопАП-Окошко у меня "убивает" ВьюСтэйт Default.aspx
Открываю ПопАП-Окошко и в нём работаю, при этом в самом ПопАП-Окошке несколько раз происходит
Page_Load. И в какой то момент теряется или портится ВьюСтэйт "родительского" Default.aspx.
Если ВьюСтэйт хранится на странице, то такой фигни не происходит.
Бред какой-то.
Используя этот код ты не будешь портить VIEWSTATE родительского окна... Создай базовый класс для всех страниц и кинь этот код туда...
protected override object LoadPageStateFromPersistenceMedium()
{
return Session[this.GetType().ToString()];
}
protected override void SavePageStateToPersistenceMedium(object viewState)
{
Session[this.GetType().ToString()] = viewState;
ClientScript.RegisterHiddenField("__VIEWSTATE", "");
}
Еще раз повторю, что данный код будет глючить, если пользователь откроет 2 страницы. Например, представьте, что вы создали электронный магзин, где витрина - 1 страница. Пользователь открыл 2 экземпляра странцы с разными критериями (мат платы и процы). Вью стейт первой страницы перезатрется при загрузке второй. Необходимо улучшить ключ, по которому хранится и возвращается значение сессии. Данный код можно переписать так:protected override void SavePageStateToPersistenceMedium(object viewState)
{
Guid key = Guid.NewGuid();
Session[key.ToString()] = viewState;
ClientScript.RegisterHiddenField("__VIEWSTATEKEY", key.ToString());
}
protected override object LoadPageStateFromPersistenceMedium()
{
string key = Request.Params["__VIEWSTATEKEY"];
object viewState = Session[key];
return viewState;
}
http://www.developer.uz - Сайт, посвященный программированию в Узбекистане
Данное сообщение получено с сайта GotDotNet.RU
|