2009-07-15 12 views
5

Desidero creare un modulo di registrazione che si estenda su 3 pagine in ASP.NET MVC.Come gestite i moduli multiparte in ASP.NET MVC?

Quale metodo si dovrebbe utilizzare per mantenere le risposte degli utenti per la prima e la seconda pagina prima di inviare la terza pagina?

È fatto con TempData, Session o qualche altro metodo particolare per MVC?

Esistono esempi su come eseguire questa operazione?

risposta

3

Steven Sanderson ha un esempio elaborato in Pro ASP.NET MVC Framework (pagg. 396-406). Invia i dati alla pagina o li serializza su TempData come richiesto e utilizza una coppia di metodi personalizzati OnActionExecuting/OnResultExecuted per gestirli dietro le quinte. All'interno del controller i dati appaiono come per magia, quindi è meno trasparente di quanto vorrei, ma mostra un metodo di persistenza di base che evita lo stato della sessione.

+2

TempData utilizza SessionState sotto. Ho davvero bisogno di prendere quel libro. – andymeadows

+2

È vero che TempData è implementato in cima all'archivio di sessioni ma dal momento che i contenuti vengono scaricati automaticamente dopo una richiesta, è molto più semplice da usare. – keithm

0

penso che ci sono alcuni criteri che si dovrebbero prendere in considerazione prima di scegliere una soluzione. Alcuni di questi sono:

  1. Hai utenti autenticati o utenti pubblici (anonimi)?
  2. Quanto è sensibile l'informazione che stai memorizzando tra le pagine?
  3. Sono autorizzati a andare fuori linea e tornare più tardi per continuare da dove avevano lasciato?
  4. Quanto sono grandi i dati che si stanno archiviando (in totale) e quanti utenti concorrenti prevedi?

Queste domande ti porteranno alle decisioni su dove e come memorizzare i dati. Una volta che lo sai, puoi iniziare a cercare una buona implementazione di quel metodo di archiviazione.

+0

Questo è il modulo di iscrizione dell'utente, quindi non saranno utenti autenticati. La sensibilità delle informazioni sarà tipica di ciò che molti siti Web di maggiori dimensioni richiedono al momento della registrazione. – KingNestor

Problemi correlati