2009-07-15 6 views
5

Je souhaite créer un formulaire d'inscription couvrant 3 pages dans ASP.NET MVC.Comment gérez-vous les formulaires à plusieurs parties dans ASP.NET MVC?

Quelle méthode doit-on utiliser pour conserver les réponses des utilisateurs pour les première et deuxième pages avant de soumettre la troisième page? Est-ce fait avec TempData, Session, ou une autre méthode particulière à MVC?

Existe-t-il des exemples de procédure?

Répondre

3

Steven Sanderson a développé un exemple dans Pro ASP.NET MVC Framework (pages 396-406). Il envoie les données à la page ou les sérialise à TempData selon les besoins, et utilise une paire de méthodes OnActionExecuting/OnResultExecuted personnalisées pour le gérer en arrière-plan. À l'intérieur du contrôleur, les données apparaissent comme par magie, donc elles sont moins transparentes que je le voudrais, mais montrent une méthode de persistance de base qui évite l'état de session.

+2

TempData utilise SessionState en dessous. J'ai vraiment besoin d'avoir ce livre. – andymeadows

+2

Il est vrai que TempData est implémenté en haut du magasin de sessions mais puisque le contenu est automatiquement vidé après une requête, il est beaucoup plus facile à utiliser. – keithm

0

Je pense qu'il ya quelques critères que vous devriez considérer avant de choisir une solution. Certains d'entre eux sont:

  1. Avez-vous des utilisateurs authentifiés ou des utilisateurs publics (anonymes)?
  2. Quelle est la sensibilité des informations que vous stockez entre les pages?
  3. Sont-ils autorisés à se mettre hors ligne et à revenir plus tard pour continuer là où ils s'étaient arrêtés?
  4. Quelle est la taille des données que vous stockez (au total) et combien d'utilisateurs simultanés prévoyez-vous?

Ces questions vous amènent à décider où et comment stocker les données. Une fois que vous le savez, vous pouvez commencer à chercher une bonne implémentation de cette méthode de stockage.

+0

Ceci est le formulaire d'inscription de l'utilisateur, donc ils ne seront pas des utilisateurs authentifiés. La sensibilité de l'information sera typique de ce que beaucoup de grands sites Web exigent lors de l'inscription. – KingNestor

Questions connexes