2012-03-13 57 views
0

我正在開發從零開始的業務應用程序。我們選擇使用Entity Framework來設計我們的業務邏輯,並且由於應用程序必須在Web上交付,所以我們選擇了MVC 3(Razor)進行演示。在ASP.NET MVC Razor視圖中管理模型更改

事情還不錯,但是我恐怕如果將來我們需要改變實體類(例如在業務實體中添加/刪除字段或添加更多的關係實體等),我將如何管理。我知道我可以通過在Visual Studio中選擇「從數據庫更新模型」來更新我的模型(我們正在使用數據庫第一種方法)。在這種情況下,我將不得不放棄舊視圖並生成新視圖,或者有什麼方法可以更新我的現有視圖。

回答

0

的疑問一點ambigous,所以我會談談MVC概念

MVC的整個做法是,所以你應該能夠lititimatly更改模型(數據庫,實體框架等「的擔憂serperation」 )而不更新您的控制器或視圖。

即表示您的模型的責任是返回控制器/視圖所需的數據。所以它需要一致。因此,如果你的模型綁定到一個返回數據x的視圖,如果這個視圖被更新,移動到一個新的平臺等等,那麼模型應該仍然返回相同的基本信息(爲了繼續使用你現有的視圖/控制器)。

如果您使用代碼首先,你應該能夠產生任何所需的分貝的意見,等上一個新的數據庫,提供該數據庫支持代碼的第一代(所以基本上MS-SQL我相信)

+0

是的我剛剛意識到視圖不需要重新生成,除非我們在模型中進行更改,使視圖不再完全代表模型。例如在實體中添加一個NOT NULL字段並且不在視圖中添加字段。 – 2012-03-13 17:57:34

0

使用時Editor-或DisplayFor可以傳入整個模型,它將顯示模型上的所有屬性。