Подтвердить что ты не робот

Разница между viewstate и controlstate

В чем разница между ViewState и ControlState в терминах IsPostBack и как они работают?

Каково фактическое использование ControlState?

4b9b3361

Ответ 1

Состояние управления - это новая конструкция в ASP.NET 2.0, и это действительно не что иное, как состояние представления; однако, это состояние просмотра со значительным преимуществом; это преимущество заключается в том, что другие разработчики, использующие ваш элемент управления, не могут отключить состояние управления, поскольку они могут просматривать состояние. http://www.codeproject.com/Articles/15300/Using-Control-State-in-ASP-NET-2-0

Ответ 2

Так как состояние управления и состояние просмотра совпадают, тогда возникает первый вопрос: не дублирование данных? Затем мы понимаем, что для Control State есть преимущество, что его нельзя отключить. Тогда мы могли бы подумать, почему мы не можем сделать то же самое для View State:) зачем изобретать новое "контрольное состояние" для этого. Теперь у нас есть дублирование данных. Причина отключения состояния View аннулируется наличием состояния Control, правильно?

Именно здесь происходит реальное преимущество состояния Control. Состояние управления универсально. То есть пользовательский элемент управления может решить, что хранить в состоянии управления. Если в качестве состояния представления не предназначено специально для хранения элемент управления, это общая функция, доступная из коробки. Поскольку состояние управления имеет определенную причину (и оно должно быть надежным), оно не предназначено для отключения.

Ответ 3

В представлении ViewState и ControlState сохраняются свойства управления, вы можете отключить только свойство ViewState, и это не повлияет на ControlState на всех, которые загружаются на первой загрузке страницы, или если страница postBack ControlState уже загружает из сохраненной памяти

Ответ 4

Состояние управления, представленное в ASP.NET версии 2.0, похоже на состояние представления, но функционально независимое от состояния представления. Разработчик страницы может отключить состояние просмотра для страницы или для отдельного элемента управления для производительности. Однако состояние управления не может быть отключено. Состояние управления предназначено для хранения важных данных управления (таких как номер страницы управления пейджером), которые должны быть доступны при обратной передаче, чтобы позволить элементу управления функционировать, даже когда состояние просмотра отключено. По умолчанию структура страницы ASP.NET хранит состояние управления на странице в том же скрытом элементе, в котором хранится состояние просмотра. Даже если состояние просмотра отключено или управление состоянием выполняется с помощью сеанса, состояние управления перемещается к клиенту и обратно к серверу на странице. При обратной передаче ASP.NET десериализует содержимое скрытого элемента и загружает состояние управления в каждый элемент управления, который зарегистрирован для состояния управления.