5

好了,所以我們有一個包含以下項目的解決方案:將實體框架放在我們的解決方案中的位置?

  • BusinessLogic
  • 實體
  • 數據訪問
  • 公用事業
  • 單元測試
  • 的UserInterface

這是一個非常大的企業級應用程序。我的問題是,我們在哪裏放置實體框架?一方面,EF看起來像是一種數據訪問技術,應該放在DataAccess項目中。但是另一方面,它會生成自己的實體,這些實體應放置在我們已經很大的實體項目中。

哪個項目是Entity Framework更好的地方?

是否有可能從EF中的持久性邏輯中分離實體?

+0

請注意,如果您的應用程序足夠大,您應該創建多個edmx模型。 – tster 2011-04-05 22:16:36

+0

我們實際上將我們的數據層轉換爲更現代的數據層。我們想使用EF。所以開始時它只會是一個EDMX,但隨着我們慢慢地將所有項目轉換爲使用新的數據層,我們將添加更多。 – Chev 2011-04-05 22:40:28

+1

你在說多少個實體?我遇到了超過100個實體的模型設計器問題和元數據加載性能問題。 – tster 2011-04-06 11:02:57

回答

7

將EDMX文件放置到DataAccess。爲實體添加T4模板並將其從DataAccess移動到實體(您可能必須在模板中修改EDMX的路徑)。它會工作 - 我一直在使用它。

編輯:

這裏是Walktrhough for POCOs但它應該是相同與國營貿易公司。

+0

任何鏈接可以幫助我做到這一點?我從來沒有聽說過這個。 – Chev 2011-04-05 22:03:00

+1

@Chevex:我添加了一些鏈接。 – 2011-04-05 22:08:50

+0

你介意給我提供一個你正在做的事情的小例子嗎?你聽起來很簡單,但是我所看到的所有資源都讓它聽起來更加複雜。我以前從未使用T4模板。如果你願意一步一步做,我會非常感激。我知道如何使用EF,但這種模板讓我感到困惑。 – Chev 2011-04-05 22:30:22

0

我可能會誤解你的問題,但我首先建議的事情是爲你的實體框架創建一個新項目。

它有一個很好的理由與其他項目?分開保持它小,並且更容易管理。也保持依賴關係。

+0

你誤解了這個問題。EF需要進入我們的數據訪問項目,其中包含訪問數據庫的代碼。或者它需要進入我們定義了所有自定義實體對象的「實體」項目。最終EF會用它生成的替換這些自定義對象。 – Chev 2011-04-06 13:54:13

+0

沒有意識到依賴關係。 – peter 2011-04-07 23:07:48

相關問題