Сесія проти ViewState
ViewState і сеанс - це два варіанти вирішення проблем у веб-додатках. Проблема пов’язана з користувачем комп'ютера, який здійснює доступ до веб-сторінки за певний проміжок часу. Через деякий час використання або після закриття програми програмою інформація веб-сторінки та доступ до неї видаляються з журналів недавнього використання.
ViewState діє лише під час передплати та застосовується лише до серіалізованих даних. Передусім ViewState - це об'єкт / архітектура, яка дозволяє веб-контролю зберігати своє значення між поштовими повідомленнями. Як і сеанс, ViewState може працювати і бути доступним серверу.
Інформація у ViewState зберігається для клієнта лише як зашифроване значення у прихованих полях браузера. Це робить дані незахищеними та, можливо, підлягають злому. Під час поштових розсилок ViewState відстежує зміни на певному веб-сайті.
ViewState також зберігає значення контролю для певної сторінки. Це означає, що дані на сторінці не є і не можуть бути доступними, доступними або реплікаційними на іншу сторінку. ViewState підтримується на рівні сторінки або поточної, живої сторінки. Він не має точки закінчення терміну дії, і його можна вмикати або вимикати у ViewState для конкретних елементів керування.
ViewState можна побачити, переглядаючи вихідний код сторінки, який триває до закриття сторінки. ViewState використовується в основному для зберігання невеликої кількості даних (зазвичай рядка та інших серіалізованих даних) на поточній сторінці. Також ViewState споживає більше пропускної здатності порівняно з сеансом, але менше пам'яті та пам’яті. ViewState не використовує занадто багато пам'яті, оскільки всі дані втрачаються в момент закриття сторінки.
Тим часом сеанс частіше використовується для веб-сторінок і стосується не лише сторінки, але й усієї програми та всієї тривалості користувача, який використовує саме цей браузер або сторінку. Сесія дійсна для будь-якого типу об’єктів і зберігається в пам'яті сервера браузера. Дані, які він зберігає, - це дані користувача комп'ютера або, іншими словами, конкретні дані користувача. Дані доступні доти, поки користувач не закриє програму браузера або не закінчиться сеанс самостійно.
На відміну від ViewState, до даних сеансу можна отримати доступ чи реплікувати в інше вікно або сторінку в межах сеансу. Сесії також не мають можливості вимкнути або включити конкретні елементи керування. Сесія також передбачає різні види даних, які потрібно зберігати в її ємності пам'яті. Сесія також має більшу пам'ять порівняно з ViewState, оскільки вона використовує пам'ять сервера. Мінусом цього є те, що сеанс має час закінчення, а кількість даних, що зберігаються в пам'яті сервера, може впливати на час завантаження сервера..
Підсумок:
1. Крім ViewState та сеансу, інші рішення ASP.NET включають змінні програми, кеш і куки. 2.ViewState і сеанс можуть працювати і бути доступними в середовищі сервера.
3.ViewState використовується на стороні клієнта, тоді як сеанс використовується на стороні сервера. Перебуваючи на стороні клієнта, ViewState не має терміну дії. Протилежне (закінчення терміну дії та перебування на стороні сервера) - для сеансу.
4.ViewState може містити лише рядкові або серіалізаційні дані, тоді як сеанс може містити великі множинні типи даних. Це робить кількість даних у ViewState набагато меншою порівняно з сеансом.
5. Сесія може копіювати або отримувати доступ до даних на новій сторінці чи вікні, поки ViewState не може використовувати цю функцію.
6.Session зберігає свої дані в пам'яті сервера, а ViewState приховує свої дані у прихованих полях браузера у вигляді зашифрованих даних. 7. Оскільки пам'ять сервера містить різні типи даних, велика кількість збережених даних може впливати на навантаження сервера.