Сессия и ViewState

Anonim

Сессия против ViewState

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

ViewState действителен только во время обратной передачи и применим только к сериализованным данным. ViewState, в первую очередь, представляет собой объект / архитектуру, которая позволяет веб-элементам управления сохранять свою ценность между postbacks. Подобно сеансу, ViewState может запускаться и быть доступным для сервера. Информация в ViewState хранится для клиента только как зашифрованное значение в скрытых полях браузера. Это делает данные необеспеченными и, возможно, подвержен взлому. Во время обратной передачи ViewState отслеживает изменения на определенном веб-сайте.

ViewState также сохраняет значение элемента управления для конкретной страницы. Это означает, что данные на странице недоступны и недоступны, доступны или реплицируются на другую страницу. ViewState поддерживается на уровне страницы или текущей текущей странице. Он не имеет смысла истекать и может быть включен или отключен в ViewState для определенных элементов управления.

ViewState можно увидеть при просмотре исходного кода страницы, который длится до закрытия страницы. ViewState в основном используется для хранения небольшого количества данных (обычно строки и других сериализованных данных) на текущей странице. Кроме того, ViewState потребляет больше полосы пропускания по сравнению с сеансом, но меньше объема памяти и памяти. ViewState не содержит слишком много памяти, так как все данные теряются в момент закрытия страницы.

Между тем, сеанс чаще используется для веб-страниц и затрагивает не только страницу, но и все приложение и всю продолжительность использования пользователя, использующего этот конкретный браузер или страницу. Сессия действительна для любого типа объектов и хранится в памяти сервера браузера. Данные, которые он сохраняет, - это данные пользователя компьютера или, другими словами, данные, специфичные для пользователя. Данные доступны до тех пор, пока пользователь не закроет приложение браузера, или сеанс не завершится сам по себе.

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

Резюме:

1. Помимо ViewState и сеанса, другие решения ASP.NET включают в себя переменные приложения, кеш и файлы cookie. 2.ViewState и сеанс могут запускаться и быть доступными в серверной среде. 3.ViewState используется на стороне клиента, в то время как сеанс используется на стороне сервера. Находясь на стороне клиента, ViewState не имеет срока действия. Противоположность (имеющая истечение и находящаяся на стороне сервера) предназначена для сеанса. 4.ViewState может содержать только строковые или сериализуемые данные, в то время как сеанс может хранить большой тип данных. Это делает количество данных в ViewState намного меньше по сравнению с сеансом. 5.Session может реплицировать или получать доступ к данным на новую страницу или окно, в то время как ViewState не поддерживает эту функцию. 6.Session сохраняет свои данные в памяти сервера, а ViewState скрывает свои данные в скрытых полях браузера в качестве зашифрованных данных. 7. Поскольку память сервера содержит разные типы данных, большое количество хранимых данных может влиять на загрузку сервера.