2011-12-26 42 views
0

使用ORM開發MVC時 我不喜歡ORM將在我的數據庫中進行更改的想法。 我的應用程序是一個數據驅動的應用程序,數據庫是我創建的第一件事。 這不是在模型和數據庫中維護數據方案的開銷嗎? 我如何管理它? 任何更適合這種工作方法的ORM?使用ORM開發的ASP.NET MVC

回答

0

對於.NET 4實體框架,工具讓你走向兩個方向;從模型生成數據庫並從數據庫生成模型。這些功能爲您實施變更管理協議提供了靈活性。我不確定有哪些選項可用於NHibernate。

實體框架的引用:

http://msdn.microsoft.com/en-us/library/bb386876.aspx

http://msdn.microsoft.com/en-us/library/bb399249.aspx

http://www.simple-talk.com/dotnet/.net-framework/entity-framework-4460---learn-to-create-databases-from-the-model/

兩個的比較#1:

Deciding between NHibernate vs Entity Framework?

1

我不喜歡的想法,ORM將在我的數據庫

ORM的變化沒有使你的數據庫結構的任何變化。如果你有現有的數據庫,你可以簡單地使用它,而不需要任何自動更改。

這不是在模型和數據庫中維護數據方案的開銷嗎?

你想如何在MVC中展示你的數據?你打算使用表示數據庫中數據的類嗎?如果是,那麼你有一個爲什麼存在ORM的原因。 ORM將數據庫中的關係數據映射到classes =它爲你加載並保存它們(=你不必處理數據庫訪問和SQL)。如果你打算使用面向對象的強類型方法,那麼ORM不會成爲你的開銷。

如果你不打算使用這種方法,你不必使用MVC。只需將ASP.NET與SQL數據源或ASP.NET動態數據一起使用即可。

任何更適合這種工作方法的ORM?

您沒有特殊的方法。

幾乎每個ORM都有一些支持工具或擴展,它們允許您創建基本映射,有時還可以從現有數據庫創建類。在EF中,您只需將實體數據模型添加到您的項目中,然後在嚮導中選擇您希望在應用程序中使用的表格。

當然最後一段被簡化了。每個ORM都有學習曲線及其特色,所以它不會那麼「簡單」。

+0

你推薦哪一個?我想過使用ActiveRecord – uriz 2011-12-26 14:46:13