2013-02-18 62 views
0

ASP.NET MVC3模型我在MVC 3中的小問題,我創建一個應用程序,在我的模型,裝運,由以下部分組成:與列表

  • 用戶ID(字符串,需要)
  • 參考ID(字符串,可選)
  • 訂單ID(字符串的列表,不能爲空)

應用程序的索引視圖是其中用戶創建裝運(模型) 。完成此操作後,用戶將無法與其進行進一步交互(無編輯,詳細信息或列表視圖)。

我的問題是這樣的。我嘗試使用一種格式來添加訂單ID,並使用兩個單獨的按鈕來提交(「添加」添加訂單ID,「發送」以創建貨件),以創建貨件本身。看起來,當我使用我的控制器的創建操作時,按下「發送」會用空的覆蓋我的訂單ID列表。但是,如果我提交索引操作,並在「發送」按鈕上重定向到創建,我的模型驗證將消失(ModelState只包含「提交」)。

現在我正在使用會話將數據傳遞給我的控制器操作,這可能不是最好的方式。

TLDR;我需要一種方法將項目添加到模型中的列表中,一次一個,同時保留其他表單數據,並且仍然能夠驗證它。

有什麼建議嗎?

+2

如果您添加表單和控制器代碼,這將有所幫助;) – JMan 2013-02-18 15:29:03

回答

0

最好看一下你的動作,因爲它不太清楚你在那裏做什麼,但是看起來你仍然希望使用相同的數據結構來傳遞不同的參數(一個包含列表,另一個包含列表包含一般數據)。我認爲最好在每個操作中提交不同的數據結構並構建所需的結果數據對象。