Categories: ASP.NET

Как оставлять ViewState на сервере в Session

Решение:
Базовый класс страницы

public class LeaveViewStateOnTheServerPage: BasePage
{
protected override object LoadPageStateFromPersistenceMedium()
{
object viewStateBag;
string m_viewState = (string)Session["ViewState"];
LosFormatter m_formatter = new LosFormatter();
try
{
viewStateBag = m_formatter.Deserialize(m_viewState);
}
catch
{
throw new HttpException("The View State is invalid.");
}
return viewStateBag;
}
protected override void SavePageStateToPersistenceMedium(object viewState)
{
MemoryStream ms = new MemoryStream();
LosFormatter m_formatter = new LosFormatter();
m_formatter.Serialize(ms, viewState);
ms.Position = 0;
StreamReader sr = new StreamReader(ms);
string viewStateString = sr.ReadToEnd();
Session["ViewState"] = viewStateString;
ms.Close();
return;
}
}

 

Для страниц, в которых надо состояние представления хранить в Session, а не на клиенте, нужно просто наследовать этот класс.

Руслан Раянов

Recent Posts

Cтандартизация задач сотрудника через личный кабинет #личныйкабинет

https://falconspace.ru/blog/sozdanie-arm-dlya-sotrudnikov--razrabotka-lichnogo-kabineta-dlya-sotrudnikov - Как сделать АРМ сотрудника. Личный кабинет сотрудника на сайте

2 дня ago

Контроль доступа к ресурсам информационной системы

https://falconspace.ru/blog/sozdanie-arm-dlya-sotrudnikov--razrabotka-lichnogo-kabineta-dlya-sotrudnikov - Как сделать АРМ сотрудника. Личный кабинет сотрудника на сайте

3 дня ago

Что дает личный кабинет для руководства компании?

https://falconspace.ru/blog/sozdanie-arm-dlya-sotrudnikov--razrabotka-lichnogo-kabineta-dlya-sotrudnikov - Как сделать АРМ сотрудника. Личный кабинет сотрудника на сайте

4 дня ago

Почему управление дистанционно вызывает опасение? В сети куча мошенников

https://falconspace.ru/blog/pro-udalennoe-vzaimodeystvie-zakazchika-i-podryadchika - Удаленное взаимодействие между заказчиками и разработчиками

6 дней ago

Удаленное взаимодействие между заказчиками и разработчиками #личныйкабинет

С одной стороны сразу видится кучу выгод от удаленной работы, но как-то страшно и боязно…

7 дней ago

Почему управление дистанционно вызывает опасение? Я могу физически контролировать подрядчика

https://falconspace.ru/blog/pro-udalennoe-vzaimodeystvie-zakazchika-i-podryadchika - Удаленное взаимодействие между заказчиками и разработчиками

1 неделя ago