ViewState si o no?

martedì 14 novembre 2006 - 20.32

ricky Profilo | Junior Member

Ciao a tutti, un suggerimento: se io decidessi di disabilitare il viewstate in tutta la pagina cosa non potrei piu gestire nelle mie pagine?

Il postback? Altro???

Dato che fino ad oggi ho sempre gestito il viewstate in tutte le pagine, ora vorrei ottimizzarne il peso; quindi cosa potrei fare?

- disabilitarlo per alcuni campi (quelli per i quali non devo recuperarne il valore modificato dopo il posback?)
- disabilitarlo per tutti i gridview/datagrid (come lo disabilito per questi oggetti? e che svantaggi porta?)

Grazie

alx_81 Profilo | Guru

>Ciao a tutti,
Ciao!
> un suggerimento: se io decidessi di disabilitare

>il viewstate in tutta la pagina cosa non potrei piu gestire nelle
>mie pagine?
>
>Il postback? Altro???
Perderesti anche la possibilità di eseguire la corretta paginazione degli eventuali grid..

>
>Dato che fino ad oggi ho sempre gestito il viewstate in tutte
>le pagine, ora vorrei ottimizzarne il peso; quindi cosa potrei
>fare?
Già disabilitare il viewstate sui datagrid/gridview e gestire la paginazione tramite javascript non è poco..
ti alleggerisce bene.. =)

>
>Grazie

Alx81 =)

http://blogs.dotnethell.it/suxstellino

ricky Profilo | Junior Member

Grazie per la risposta! Quindi, in sintesi, quando è meglio tenerla? O meglio per quali elementi devo tenere la gestione del viewstate e per quali è meglio disabilitarli?

Button: la terrei per gestire la validazione
GridView:???

Altri (non vengono in mente altri esempi )

alx_81 Profilo | Guru

Questa è una scelta che spetta a te..
ti serve la paginazione automatica dei grid? se sì tienilo..
ti serve avere il postback dei campi (già valorizzati dopo la postback)? se sì tienilo..
Sono tutte considerazioni che devi fare tu..
io, ad esempio, tolgo la paginazione al dg e la faccio ex novo.. senza viewstate..

Alx81 =)

http://blogs.dotnethell.it/suxstellino

ricky Profilo | Junior Member

Come è possibile togliere il viewstate da un GridView? e come è possibile gestire la paginazione manualmente? (intentendo senza viewstate)

Grazie per l'aiuto

alx_81 Profilo | Guru

>Come è possibile togliere il viewstate da un GridView?
Basta definire la proprietà EnableViewState a False..

> e come è possibile gestire la paginazione manualmente? (intentendo senza viewstate)
Mi è capitato di utilizzare javascript e le nuove funzionalità di SQL Server 2005, ad esempio la with con le funzioni di ranking per creare la pagina di dati.. ecc..

Alx81 =)

http://blogs.dotnethell.it/suxstellino

ricky Profilo | Junior Member

Grazie ancora! Sai dirmi dove posso trovare info a riguardo? Intedo le modalità di gestione "manuale" della pagina con .NET 2.0?

Secondo te l'utilizzo di SQL Server per la paginazione è piu o meno performante, in un'applicazione con migliaia di utenti, rispetto a JS?

alx_81 Profilo | Guru

>Grazie ancora! Sai dirmi dove posso trovare info a riguardo?
>Intedo le modalità di gestione "manuale" della pagina con .NET
>2.0?
>
>Secondo te l'utilizzo di SQL Server per la paginazione è piu
>o meno performante, in un'applicazione con migliaia di utenti,
>rispetto a JS?
JS, serve solo per passare il numero della pagina clickata..
poi lato server, puoi scegliere di scaricare tutta la query (se non pesante) su un datatable e gestire la paginazione direttamente su di esso, altrimenti puoi decidere di utilizzare una with (SQL Server 2005) con un metodo simile a questi:

http://blogs.aspitalia.com/rickyvr/post1112/Gestire-Paginazione-Dati-SQL-Server-2005.aspx
http://database.html.it/articoli/leggi/1713/paginazione-dei-risultati-in-sql-server-2005/
http://www.aspitalia.com/script/749/Paginazione-Lato-Server-SQL-Server-2005.aspx

Ciao!





Alx81 =)

http://blogs.dotnethell.it/suxstellino
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5