2009-07-15 13 views
5

ASP.NET MVCの3ページにまたがる申し込みフォームを作成したいと思います。ASP.NET MVCでマルチパートフォームをどのように扱いますか?

第3ページを送信する前に、第1ページと第2ページのユーザー回答を維持するにはどのような方法を使用しますか?

これは、TempData、Session、またはMVC特有の他の方法で行われますか?

これを行う方法の例はありますか?

答えて

3

Steven Sandersonは、Pro ASP.NET MVC Framework(pp 396-406)で実例を紹介しています。彼は必要に応じてデータをページに送信したり、必要に応じてTempDataにシリアル化したり、カスタムOnActionExecuting/OnResultExecutedメソッドを使用して背後で管理します。コントローラーの中では、データは魔法のようにポップアップするので、私が望むよりも透過的ではありませんが、セッション状態を回避する基本的な永続化メソッドを示しています。

+2

TempDataは、下にSessionStateを使用します。私は本当にその本を入手する必要があります。 – andymeadows

+2

TempDataはセッションストアの上に実装されていますが、1回のリクエスト後にコンテンツが自動的に消去されるため、使用がはるかに簡単です。 – keithm

0

私はあなたのソリューションを選択する前に考慮すべきいくつかの基準があると思います。これらのうちのいくつかは次のとおりです。

  1. 認証済みのユーザーまたは公開(匿名)ユーザーをお持ちですか?
  2. ページ間に保存している情報の重要度はどれですか。
  3. オフラインにして後で戻って、中断していたところから続けることができますか?
  4. 保存しているデータの量(合計)と同時ユーザー数はどれくらいですか?

これらの質問は、データの保存場所と保存方法の決定につながります。あなたがそれを知ったら、その記憶方法の良い実装を探し始めることができます。

+0

これはユーザー登録フォームなので、認証されたユーザーではありません。情報の機密性は、サインアップ時に多くのより大きなウェブサイトが必要とするものに典型的なものになります。 – KingNestor

関連する問題