Skillnad mellan session och ViewState

Session vs ViewState

ViewState och session är två av lösningarna för problem i webbapplikationer. Problemet innebär att en datoranvändare åtkomst till en webbsida under en viss tidsperiod. Efter en viss användningstid eller efter att användaren stängde applikationen raderas webbsidans information och åtkomst från senaste användarloggar.

ViewState är endast giltigt under postbacks och gäller endast serialiserade data. ViewState är först och främst objekt / arkitektur som gör det möjligt för webbkontroller att behålla sitt värde mellan postbacks. Som session kan ViewState springa och vara tillgänglig för en server.
Informationen i ViewState lagras endast för klienten som ett krypterat värde i webbläsarens dolda fält. Detta gör data osäkrade och eventuellt föremål för hacking. Under postbackar spårar ViewState ändringarna på en viss webbplats.

ViewState behåller också värdet av kontrollen för den specifika sidan. Det betyder att data på en sida inte är och kan inte vara tillgänglig, åtkomst eller replikerad till en annan sida. ViewState bibehålls på sidnivå eller aktuell, levande sida. Det har ingen utgångspunkt och kan aktiveras eller inaktiveras i ViewState för specifika kontroller.

ViewState kan ses vid visning av källkoden på sidan som varar tills sidan är stängd. ViewState används oftast för att hålla en liten mängd data (vanligtvis en sträng och annan seriell data) på den aktuella sidan. Dessutom förbrukar ViewState mer bandbredd jämfört med session men mindre minne och minnesutrymme. ViewState involverar inte för mycket minne eftersom all data går förlorad när sidan är stängd.

Under tiden är sessionen vanligare används för webbsidor och påverkar inte bara sidan, men hela applikationen och hela tiden för en användare med den vissa webbläsaren eller sidan. Sessionen gäller för alla typer av objekt och lagras i webbläsarens serverminne. Den data som den behåller är data från datoranvändaren eller med andra ord användarspecifika data. Uppgifterna är tillgängliga tills användaren stänger webbläsarprogrammet eller sessionen löper ut på egen hand.

Till skillnad från i ViewState kan data i session nås eller replikeras till ett annat fönster eller en sida i sessionen. Sessioner har inte möjlighet att inaktivera eller aktivera specifika kontroller. Sessionen innefattar också olika typer av data som ska lagras i sin minnesbehållare. Session har också ett större minne jämfört med ViewState eftersom det använder serverns minne. Nackdelen med detta är att sessionen har en utgångstid och mängden data som lagras i serverns minne kan påverka tidsserverns belastning.

Sammanfattning:

1.Aside från ViewState och session innehåller andra ASP.NET-lösningar applikationsvariabler, cache och cookies. 2.ViewState och session kan både springa och vara tillgängliga i en servermiljö.
3.ViewState används på klientsidan medan session används på serverns sida. Att vara på klientsidan gör att ViewState inte har någon utgång. Det motsatta (att ha en utgång och vara på serverns sida) är för session.
4.ViewState kan bara hålla en sträng eller serialiserbar data medan sessionen kan innehålla en stor mängd data. Detta gör mängden data i ViewState mycket mindre jämfört med sessionens.
5.Session kan replikera eller komma åt data till en ny sida eller ett fönster medan ViewState inte kan använda den här funktionen.
6.Session lagrar data i serverminne medan ViewState döljer sin data i en webbläsares dolda fält som krypterad data. 7. Eftersom serverns minne rymmer olika sorters data kan en stor mängd lagrade data påverka serverbelastningen.