2010-06-01 97 views

回答

1

還有其他選擇。基本上我的頭頂上有三個選項。

  1. 您可以創建一個用戶控件,並擁有非常輕量級的編輯和創建頁面。
  2. 如果您使用的是ASP.MVC 2,則可以將佈局捕獲爲視圖模型上的屬性,並使用新的模板助手DisplayFor和編輯/創建案例EditorFor/EditorForModel。
  3. 您可以在控制器操作調用View時指定視圖名稱。
0

您可以指定希望控制器方法使用哪個視圖,因此對於擁有兩個不同的視圖沒有嚴格的要求。

如果您的添加和編輯視圖看起來完全相同,但您希望向用戶清楚他們是添加還是編輯,您可以簡單地將不同的標題推送到ViewData中,並將其顯示在共享視圖中。

您還可以將視圖置於「共享」文件夾中,或者創建可共享的.ASCX部分。

0

去吧。它非常有意義。應該始終爲前端開發人員設置視圖,因爲控制器可以將數據傳遞到任何視圖,而無需任何額外的工作。你應該不會被限制去做某件事,只是因爲ReSharper這麼說。

1

你不「有」做任何事情。 MVC基於約定,這些約定很有價值,但這些在技術上並不需要。在你的情況下,我認爲避免冗餘代碼更重要。

您可能會考慮僅使用「更新」操作和Update.aspx視圖(表單)來處理它。

對創建和更新使用相同的表單。唯一的區別是,創建時,表單不會有對象ID。

提交後,如果Update操作看到一個ID,它將加載該對象。如果不是,它會實例化一個新的。然後只需更新表單中的屬性,並提交(保存)。

所以,一個動作和一個視圖。代碼少,它保持慣例。

相關問題