MVC 3 に小さな問題があります。アプリケーションを作成しています。ここで、モデル、出荷は次のもので構成されています。
- ユーザー ID (文字列、必須)
- 参照 ID (文字列、オプション)
- 注文 ID のリスト (文字列、空にすることはできません)
アプリケーションのインデックス ビューは、ユーザーが出荷 (モデル) を作成する場所です。これが完了すると、ユーザーはそれ以上操作できなくなります (編集、詳細、またはリスト ビューはありません)。
私の問題はこれです。注文 ID の追加と出荷自体の作成の両方に 1 つのフォームを使用しようとしています。送信には 2 つの別々のボタン (注文 ID の追加には「追加」、出荷の作成には「送信」) を使用します。コントローラーの作成アクションを使用しているときに、「送信」を押すと、注文 ID のリストが空のリストで上書きされるようです。ただし、インデックスアクションに送信し、「送信」を押して作成にリダイレクトすると、モデルの検証はなくなります (ModelState には「送信」のみが含まれます)。
現在、セッションを使用してコントローラー アクションにデータを渡していますが、これはおそらく最善の方法ではありません。
TLDR; モデル内のリストに項目を 1 つずつ追加しながら、他のフォーム データを保持しながら、それを検証できる方法が必要です。
助言がありますか?