1

6 つのページがあり、それぞれに独自のフォームがあり、そのフォームに関連付けられたモデルがあります。私ができるようにしたいのは、6 つのフォームすべてにすべての情報を保存して、ユーザーが 6 つのページのいずれかに移動しても以前の作業を保存できるようにすることです。アイデアは、ユーザーがページ上のフォームに任意の順序で入力し、いつでも作業に戻れるようにすることです。

このすべての情報を維持する最善の方法は何ですか? 他のすべてのモデルを持ち、このモデルのみを他のページに渡すスーパー モデルを作成する必要がありますか? ありがとう!

4

2 に答える 2

3

現在のページに関連するデータを (データ ソースから) 取得して表示します。ページ内のすべてのデータを表示する場合 (例: すべてのページの概要ページ、すべてのデータを保持するビュー モデルを作成します) )。DB テーブル/Web サービス/XML ファイル/キャッシュ データ/セッションなど、さまざまなソースからデータを取得できます。

各ビューは、個々のビュー モデルにバインドできます。

public class AddressVM
{
  //properties for address page
}

public class BillingInfo
{
  //properties for Billing Info page
}

public class OrderSummaryVM
{
 public AddressVM ShippingAddress {set;get;}
 public BillingInfo BillingDetails {set;get;}
}

要約ページはOrderSummaryVMクラスにバインドでき、個々のページはクラスにバインドできAddressVMますBillingInfoVM

于 2013-05-24T21:26:56.793 に答える
1

What your are looking for is how to manage session in a MVC application.

There are several ways to do so.

You could use ViewData, ViewBag, TempData or Session

Another way to do it would be to have only one page with the six forms. The user would navigate through the form using javascript to show/hide appropriate content. At the end he would submit all the data to your controller. You could save the data in a cookie so that if he close and reopen the browser he still sees what he entered.

于 2013-05-24T21:32:22.213 に答える