2013-01-09 67 views
-4

我有一個有很多表的DB(接近400)實體框架很難管理大型項目?

現在我們必須使用dbfirst aproach來構建模型。

  1. 什麼是建立模型的最佳方法?
  2. 我們可以將整個模型編譯爲一個dll嗎?
  3. 我該怎麼做,在不同的項目上重複使用模型?

回答

1

1-最適合做什麼?如果您需要快速構建項目,我建議您採用Database-First方法。但我有一些限制,但速度很快。如果您使用Model-First,則可以快速構建項目,購買與Database-First相同的產品,但它有一定的限制,但如果時間不是您的問題,那麼您可以使用Class-First(代碼優先)方法。其他人更靈活。

2 - 是的,你可以。如果您使用的是n層體系結構,則可以創建一個Class Project並將其放入EDMXPOCO實體中,以創建DAL層。

3 - 我相信Code-First比別人好。根據我的實驗,使用POCO實體可以幫助您更多地使用各種數據庫引擎。

通常選擇你想使用的女巫方法取決於你的項目環境。對於大型項目,我推薦使用Code-First方法。但請記住,在所有EF方法中,您都必須關注您的疑問。

EX:一個大的錯誤,是在新的程序員的代碼鋸:

代碼1:

DataContext.Table1.ToList().Where(x => x.Username == "Ali") 

代碼2:

DataContext.Table1.Where(x => x.Username == "Ali").ToList() 

第一個代碼獲取所有記錄,然後取其中一個,但第二個代碼只是獲取一條記錄,並且如果您的Table1有1000萬條記錄,則會發生一個可怕的錯誤:))。因此,在開發項目期間應注意這些錯誤。這是選擇方法的方法:)

好運

+0

什麼樣的事情,必須考慮「表演的東西」更重要。當建立一個大型的模型=? –

+0

我相信即使是專業的策略也可能需要太多的表現。您負責保持您的代碼清潔,而不是您選擇的方法。特別是這種情況下(我的意思是EF和它的方法) –

+0

tks爲您的幫助 –