Verschil tussen sessie en ViewState

Sessie versus ViewState

ViewState en sessie zijn twee van de oplossingen voor problemen in webtoepassingen. Het probleem houdt in dat een computergebruiker in een bepaalde periode toegang tot een webpagina heeft. Na enige tijd van gebruik of nadat de gebruiker de toepassing heeft gesloten, worden de informatie en toegang van de webpagina verwijderd uit recente gebruikslogboeken.

ViewState is alleen geldig tijdens postbacks en alleen van toepassing op geserialiseerde gegevens. ViewState is in de allereerste plaats object / architectuur waarmee webbesturingselementen hun waarde tussen postbacks kunnen behouden. Net als een sessie kan ViewState worden uitgevoerd en toegankelijk zijn voor een server.
De informatie in ViewState wordt voor de client alleen opgeslagen als een gecodeerde waarde in de verborgen velden van de browser. Dit maakt gegevens onbeveiligd en mogelijk onderhevig aan hacking. Tijdens postbacks houdt ViewState de wijzigingen bij op een bepaalde website.

ViewState behoudt ook de waarde van controle voor de specifieke pagina. Dit betekent dat de gegevens op een pagina niet en niet beschikbaar, toegankelijk of gerepliceerd kunnen worden naar een andere pagina. ViewState wordt onderhouden op het paginaniveau of de huidige live-pagina. Het heeft geen punt van expiratie en kan in ViewState worden ingeschakeld of uitgeschakeld voor specifieke besturingselementen.

ViewState is te zien in het bekijken van de broncode van de pagina die duurt tot de pagina is gesloten. ViewState wordt meestal gebruikt om een ​​kleine hoeveelheid gegevens (meestal een tekenreeks en andere geserialiseerde gegevens) op de huidige pagina te houden. Bovendien verbruikt ViewState meer bandbreedte in vergelijking met de sessie, maar minder geheugen en geheugenruimte. ViewState neemt niet te veel geheugen in beslag, omdat alle gegevens verloren gaan op het moment dat de pagina wordt gesloten.

Ondertussen wordt sessie vaker gebruikt voor webpagina's en beïnvloedt niet alleen de pagina, maar de hele applicatie en de volledige duur van een gebruiker die die specifieke browser of pagina gebruikt. Sessie is geldig voor elk type object en wordt opgeslagen in het servergeheugen van de browser. De gegevens die worden bewaard, zijn de gegevens van de computergebruiker of, met andere woorden, gebruikersspecifieke gegevens. De gegevens zijn beschikbaar totdat de gebruiker de browsertoepassing sluit of de sessie als vanzelf eindigt.

Anders dan in ViewState, kunnen de gegevens in sessie worden geopend of gerepliceerd naar een ander venster of een andere pagina binnen de sessie. Sessies hebben ook niet de mogelijkheid om specifieke besturingselementen uit te schakelen of in te schakelen. Sessie omvat ook verschillende soorten gegevens die moeten worden opgeslagen in de geheugenontvanger. Sessie heeft ook een groter geheugen in vergelijking met ViewState omdat het servergeheugen gebruikt. Het nadeel hiervan is dat de sessie een vervaltijd heeft en dat de hoeveelheid gegevens die is opgeslagen in het servergeheugen invloed kan hebben op de tijdserverload.

Samenvatting:

1.Allemaal van ViewState en sessie omvatten andere ASP.NET-oplossingen toepassingsvariabelen, cache en cookies. 2.ViewState en sessie kunnen zowel worden uitgevoerd als toegankelijk zijn in een serveromgeving.
3.ViewState wordt gebruikt aan de clientzijde terwijl de sessie wordt gebruikt aan de serverzijde. Als u zich aan de clientzijde bevindt, heeft ViewState geen vervaldatum. Het tegenovergestelde (met een verloop en aan de serverzijde) is voor sessie.
4.ViewState kan alleen een tekenreeks of serialiseerbare gegevens bevatten, terwijl de sessie een groot aantal typen gegevens kan bevatten. Dit maakt de hoeveelheid gegevens in ViewState veel kleiner in vergelijking met sessies.
5.Sessie kan repliceren of toegang krijgen tot gegevens naar een nieuwe pagina of venster, terwijl ViewState niet in staat is om deze functie te gebruiken.
6.Session slaat de gegevens op in het servergeheugen, terwijl ViewState zijn gegevens in de verborgen velden van een browser verbergt als gecodeerde gegevens. 7. Aangezien het servergeheugen verschillende soorten gegevens bevat, kan een grote hoeveelheid opgeslagen gegevens de serverbelasting beïnvloeden.