Domanda

Stiamo per iniziare a ricostruire uno dei nostri progetti ASP.NET e vorrei provare a svilupparlo senza viestate attivato (disabilitato in web.config).

Conosco gli aspetti positivi e negativi di viewstate e in generale di cosa tiene traccia rispetto allo stato di controllo, tuttavia vorrei sapere:

  1. Quali sono le principali differenze nei processi di sviluppo? Vale a dire in che modo strutturi il tuo Page_Load ecc?

  2. Esiste qualche funzionalità nei controlli ASP.NET standard che in realtà non funzionerà senza viewstate attivato?

Inoltre, ci sono articoli dettagliati sulle differenze del flusso di lavoro tra lavorare con e senza VS?

È stato utile?

Soluzione

La maggior parte dei controlli come TextBox e DropDownLists funzioneranno perfettamente senza viewstate.

Non sono a conoscenza di problemi relativi al processo di sviluppo, ad eccezione di eventuali controlli o proprietà creati o modificati tramite il codice che non persistono senza viewstate, quindi è necessario ricrearli / modificarli su un postback.

Ho alcune pagine molto grandi con grandi viewstate. Ho fatto un esperimento per disabilitare viewstate per l'intero progetto e non ho riscontrato (inizialmente) alcuna perdita di funzionalità evidente. Quindi alcuni piccoli problemi sono emersi durante i test, quindi l'abbiamo ripristinato. Ma la nostra app Web di 300 pagine era probabilmente funzionale al 99% senza viewstate. I problemi che avevamo erano incentrati sui datagrid - principalmente sul paging, e creavano dinamicamente controlli e altre cose modificate dal codice dietro, e quindi non persistevano senza viewstate.

Questo è un ottimo articolo su Viewstate:

http://msdn.microsoft.com/en-us/library /ms972976.aspx

Altri suggerimenti

Se sei contrario a viewstate, perché non provare a utilizzare il framework MVC? Potrebbe essere un aggiustamento più semplice.

Disattivo viewstate sui miei progetti. Uso i metodi scatter / gather per popolare e ottenere valori dalle pagine aspx ai / dai miei oggetti di accesso ai dati. È molto più pulito e semplice rispetto all'utilizzo di viewstate.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top