Diferența dintre sesiune și ViewState

Sesiune vs. ViewState

ViewState și sesiune sunt două dintre soluțiile pentru probleme în aplicațiile web. Problema implică un utilizator de computer care accesează o pagină Web într-o anumită perioadă de timp. După o anumită perioadă de utilizare sau după închiderea aplicației, informațiile și accesul paginii web sunt șterse din jurnalele recente de utilizare.

ViewState este valabil numai în timpul postbackback-urilor și este aplicabil numai pentru datele serializate. ViewState, în primul rând, este obiect / arhitectură care permite comenzilor Web să-și mențină valoarea între postback-uri. Ca sesiune, ViewState poate rula și fi accesibilă unui server.
Informațiile din ViewState sunt stocate pentru client numai ca valoare criptată în câmpurile ascunse ale browserului. Acest lucru face ca datele să fie neasigurate și, eventual, supuse la hacking. În timpul întoarcerilor, ViewState urmărește modificările într-un anumit site web.

ViewState păstrează, de asemenea, valoarea controlului pentru pagina respectivă. Aceasta înseamnă că datele de pe o pagină nu sunt și nu pot fi disponibile, accesate sau reproduse pe altă pagină. ViewState este menținută la nivelul paginii sau în pagina curentă. Nu are punct de expirare și poate fi activat sau dezactivat în ViewState pentru controale specifice.

ViewState poate fi văzut la vizualizarea codului sursă al paginii care durează până când pagina este închisă. ViewState este utilizat în cea mai mare parte pentru a ține o cantitate mică de date (de obicei un șir și alte date serializate) pe pagina curentă. De asemenea, ViewState consumă mai multă lățime de bandă în comparație cu sesiunea, dar mai puțină memorie și spațiu de memorie. ViewState nu implică prea multă memorie, deoarece toate datele se pierd în momentul închiderii paginii.

Între timp, sesiunea este mai frecvent utilizată pentru paginile web și afectează nu numai pagina, ci întreaga aplicație și întreaga durată a utilizatorului care utilizează respectivul browser sau pagină. Sesiunea este valabilă pentru orice tip de obiecte și este stocată în memoria server a browserului. Datele pe care le păstrează sunt datele utilizatorului de calculator sau, cu alte cuvinte, datele specifice utilizatorului. Datele sunt disponibile până când utilizatorul închide aplicația browserului sau dacă durata sesiunii expiră singură.

Spre deosebire de ViewState, datele din sesiune pot fi accesate sau replicate într-o altă fereastră sau pagină din cadrul sesiunii. De asemenea, sesiunile nu au capacitatea de a dezactiva sau de a activa controale specifice. Sesiunea implică, de asemenea, diferite tipuri de date care trebuie stocate în recipientul de memorie. Sesiunea are, de asemenea, o memorie mai mare comparativ cu ViewState, deoarece utilizează memoria serverului. Dezavantajul este că sesiunea are un timp de expirare, iar cantitatea de date stocate în memoria serverului poate afecta încărcarea serverului de timp.

Rezumat:

1.În afară de ViewState și sesiune, alte soluții ASP.NET includ variabile de aplicație, cache și cookie-uri. 2.ViewState și sesiune pot rula și să fie accesibile într-un mediu server.
3.ViewState este utilizat pe partea clientului în timp ce sesiunea este utilizată pe partea de server. Fiind pe partea clientului, ViewState nu are expirare. Opusul (având o perioadă de expirare și fiind pe partea de server) este pentru sesiune.
4.ViewState poate să dețină doar un șir sau date serializabile în timp ce sesiunea poate să dețină un tip mare de date de multitudine. Acest lucru face ca cantitatea de date din ViewState să fie mult mai mică în comparație cu cea a sesiunii.
5.Sesiunea poate replica sau accesa datele pe o nouă pagină sau o fereastră nouă în timp ce ViewState nu este capabilă de această caracteristică.
6.Session își stochează datele în memoria serverului, în timp ce ViewState ascunde datele sale în câmpurile ascunse ale browserului ca date criptate. 7. Deoarece memoria serverului deține diferite tipuri de date, o cantitate mare de date stocate poate afecta încărcarea serverului.