Иллюстрированный самоучитель по VB.NET




Что передается клиенту? - часть 2


style="height:67px;width:123px;Z-INDEX: 101: LEFT :311px:

POSITION:absolute;TOP:212px"/>

<span id="Labell"style="height:132px:width:631px:Z-INDEX:102:

LEFT:15px;POSITION:absolute:TOP:40px"></span>

</form>

</body>

</HTML>

Из выделенного фрагмента видно, что в сгенерированный для клиентской стороны HTML-код включена форма HTML с атрибутом post и скрытым полем _VIEWSTATE. Эти строки позволяют ASP .NET сохранять информацию состояния, не требуя специальных действий со стороны клиента. Скрытое поле _VIEWSTATE содержит зашифрованные данные, по которым ASP .NET может восстановить страницу и ее состояние. Механизм шифрования представляет собой особую разновидность сериализации; чтобы отключить сохранение состояния, задайте свойству ЕпаЫе-ViewState значение False.

Чтобы лучше понять, как происходит сохранение состояния, нажмите кнопку и снова просмотрите исходный текст. На этот раз ключевые строки HTML-кода будут выглядеть примерно так:

<form name="Forml" method="post" action="WebForml.aspx" id="Forml">

<input type="hidden" name="_VIEWSTATE"

value="dDwxMDA3MzE2MzEy03Q802w8aTwxPjs+

02w8dDw7bDxpPDM+Oz47bDxOPHA,

8cDxsPEZvbnRfU216ZTtUZXh0018hUOI7PjtsPFN5

c3RlbS5XZWIuVUkuV2Vi029udHJvbH

MuRm9udFVuaXQsIFN5c3RlbS5XZWIsIFZlcnNpb

249MS4wLjIOMTEuMCwgQ3VsdHVyZT

luZXVOcmFsLCBQdWJsaWNLZXlUb2tlbjliMDNmN

WY3ZjExZDUwYTNhPFgtT6FyZ2U+0

ldlbGNvbWUgdG8gQVNQLk5FVCBAOC8xOS8yMDAx

IDEyOjM20jAwIFBN02k8MTQwOT

47Pj47Pjs7Pjs+Pjs+Pjs+"/>

Хотя базовый файл .aspx, указанный в атрибуте тега <form>, остался прежним, скрытая переменная _VIEWSTATE изменилась весьма основательно. Фактически в этом поле сохранено полное состояние элементов HTML и данных формы. Одно из преимуществ этого подхода заключается в том, что программист избавляется от хлопот с сохранением состояния. Он просто задает свойству EnableViewState значение True и переходит к программированию логики страницы.


Содержание  Назад  Вперед