2012-04-01 84 views
1

我有2個客戶視圖,一個用於創建,一個用於編輯。我爲兩者使用相同的客戶視圖模型。我想在添加時使'客戶無需字段',但不是編輯。ASP.NET MVC在不同視圖中使用視圖模型

如果我把requiredfield屬性上的視圖模型屬性,則這兩種觀點標誌「客戶編號」的要求(如你所期望的)。

有一個內置的解決方案來解決這個問題,還是我將不得不創建2個獨立的視圖模型,一個帶有屬性和一個沒有。

謝謝

回答

1

這與this question類似。

我會強烈建議您量身打造2個查看模型編輯和創建行動。這是一個更清潔。我給你的鏈接中的最後一個答案提出了一種解決方法,並禁用了ModelState上的錯誤。

0

客戶號碼是如何創建但不能編輯的?

如果你創建它,它需要的數量,當你編輯它,這個數字仍然存在。

您的意思是他們可以在編輯時刪除客戶編號嗎?或者你的意思是你想要客戶沒有。在編輯時是不可編輯的?

如果是後者,那麼您可以根據需要保留客戶號碼,您只需在編輯視圖中顯示客戶號碼(不是在文本框中),並使用隱藏輸入來包含號碼以便發佈。

0

只是一個概念類型的建議。從模型中刪除所需的驗證屬性。在您的控制器中,使參數爲可選項,並根據哪個操作(編輯或創建),您將手動添加某種類型的驗證。

的jQuery驗證可用於基於輸入,如果你對手動路由去客戶端進行驗證。

相關問題