Differenza tra Session e ViewState

Sessione vs ViewState

ViewState e la sessione sono due delle soluzioni per i problemi nelle applicazioni web. Il problema riguarda un utente del computer che accede a una pagina Web in un determinato periodo di tempo. Dopo un certo periodo di utilizzo o dopo che l'utente ha chiuso l'applicazione, le informazioni e l'accesso della pagina Web vengono eliminati dai registri degli usi recenti.

ViewState è valido solo durante i postback e applicabile solo ai dati serializzati. ViewState, prima di tutto, è oggetto / architettura che consente ai controlli Web di mantenere il loro valore tra i postback. Come la sessione, ViewState può essere eseguito ed essere accessibile a un server.
Le informazioni in ViewState vengono memorizzate per il client solo come valore crittografato nei campi nascosti del browser. Ciò rende i dati non protetti e potenzialmente soggetti a pirateria informatica. Durante i postback, ViewState tiene traccia delle modifiche in un determinato sito Web.

ViewState conserva inoltre il valore del controllo per la pagina specifica. Ciò significa che i dati su una pagina non sono e non possono essere disponibili, accessibili o replicati in un'altra pagina. ViewState viene mantenuto a livello di pagina o corrente, pagina live. Non ha alcun punto di scadenza e può essere abilitato o disabilitato in ViewState per controlli specifici.

ViewState può essere visto nella visualizzazione del codice sorgente della pagina che dura fino alla chiusura della pagina. ViewState viene principalmente utilizzato per contenere una piccola quantità di dati (di solito una stringa e altri dati serializzati) nella pagina corrente. Inoltre, ViewState consuma più larghezza di banda rispetto alla sessione ma meno memoria e spazio di memoria. ViewState non coinvolge troppa memoria poiché tutti i dati vengono persi nel momento in cui la pagina viene chiusa.

Nel frattempo, la sessione è più comunemente utilizzata per le pagine Web e riguarda non solo la pagina ma l'intera applicazione e l'intera durata di un utente che utilizza quel particolare browser o pagina. La sessione è valida per qualsiasi tipo di oggetto e viene archiviata nella memoria del server del browser. I dati che mantiene sono i dati dell'utente del computer o, in altre parole, i dati specifici dell'utente. I dati sono disponibili fino a quando l'utente chiude l'applicazione del browser o la sessione scade da sola.

A differenza di ViewState, è possibile accedere ai dati in sessione o replicarli in un'altra finestra o pagina all'interno della sessione. Le sessioni inoltre non hanno la possibilità di disabilitare o abilitare controlli specifici. Sessione coinvolge anche diversi tipi di dati da memorizzare nella sua memoria ricettacolo. Session ha anche una memoria più grande rispetto a ViewState poiché utilizza la memoria del server. Lo svantaggio di questo è che la sessione ha una scadenza e la quantità di dati archiviati nella memoria del server può influenzare il carico del time server.

Sommario:

1. Oltre a ViewState e alla sessione, altre soluzioni ASP.NET includono variabili applicative, cache e cookie. 2.ViewState e la sessione possono essere eseguite ed essere accessibili in un ambiente server.
3.ViewState viene utilizzato sul lato client mentre la sessione viene utilizzata sul lato server. Essere sul lato client rende ViewState non ha scadenza. L'opposto (che ha una scadenza e si trova sul lato server) è per la sessione.
4.ViewState può contenere solo una stringa o dati serializzabili mentre la sessione può contenere un grande tipo di dati. Ciò rende la quantità di dati in ViewState molto più piccola rispetto alla sessione.
5.Session può replicare o accedere ai dati a una nuova pagina o finestra mentre ViewState non è in grado di questa funzione.
6. La sessione memorizza i suoi dati nella memoria del server mentre ViewState nasconde i suoi dati nei campi nascosti di un browser come dati crittografati. 7. Poiché la memoria del server contiene diversi tipi di dati, una grande quantità di dati memorizzati può influire sul carico del server.