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

Скрытое поле против viewstate

В чем разница при использовании

  • Скрытое поле vs Просмотр состояния?
  • Когда использовать каждый из них?
  • Какой еще более безопасный?
  • Что лучше в производительности?
  • Каковы альтернативы?
4b9b3361

Ответ 1

ViewState хранится в скрытом поле и содержит информацию обо всей странице. Он также может быть зашифрован. Поскольку состояние представления всегда отправляется кодовому блоку при выполнении Postbacks, это очень практично, так как вы всегда получаете значения. Недостатком является то, что он может стать действительно большим, если вы начнете вкладывать в него много информации, и производительность может начать страдать. Например, в некоторых запросах AJAX вы хотите отправлять небольшую информацию только на сервер, и если вы используете UpdatePanels, будет отправлено все ViewState, и оно будет содержать информацию, которая не нужна.

Ответ 2

Скрытое поле можно просмотреть в исходном HTML-тексте страниц, тогда как ViewState, по меньшей мере, запутанный и в зависимости от вашей .net-версии, может быть зашифрован в различной степени.

шифрование в режиме просмотра asp.net

Скрытое поле будет лучше в производительности, но не обеспечит безопасность, и если почтовые данные могут быть обработаны, гораздо проще изменить ViewState.

Переменные сеанса являются хорошей альтернативой этим.

Ответ 3

ViewState внутренне использует скрытое поле. Он управляется ASP.NET Engine и по умолчанию зашифрован.

С другой стороны, с помощью скрытого управления полем вы можете управлять тем, что в нем хранится. По умолчанию он не зашифрован.

Производительность разумна, оба они одинаковы. Но я чувствую, что ViewState более безопасен. ASP.NET поддерживает хэш для предотвращения/идентификации каких-либо вмешательств с его стороны клиента.

Вы также можете использовать сеанс для хранения данных.