2009-05-25 30 views
1

我有我的項目的現有模型。我想切換到實體框架,但我不想用EF生成的模型替換我的模型。我可以在現有Model中使用ADO.NET Entity Framework嗎?

此外,我的模型是從我的數據庫架構完全不同的,因此任何機會使用從EF生成的模型,做所有需要的重構也不難。

確實存在任何方式有一個現有的域,現有的數據庫,並只使用EF的方法添加到我的域名包括O/RM層?

回答

1

在.NET 3.5SP1中,那麼答案恐怕是一個很大的「不」。在.NET 4.0中,這個故事看起來更有希望,引入了POCO支持(儘管我還沒有在公開測試版上嘗試過),但希望可以使用自己的對象。

請注意,您可以通過使用外部映射文件(並提供DataContext對象)使用LINQ到SQL來執行POCO(包含您自己的對象) - 但這些工具並不完全幫助您執行此操作(它希望默認使用代碼生成)。

現在,也許NHibernate(和類似)是你最好的選擇。

1

你可以下載實體框架的beta release如果你是MSDN訂閱。 它支持POCO對象,這就是你所指的,並且EF 1.0受到了嚴厲批評。

ADO.NET的設計團隊剛剛最近公佈@POCO in the Entity Framework: Part 1 - The Experience這將有助於你得到正確的軌道上。

從我使用EFPocoAdapter(前驅EF 4.0)我很樂意爲您推薦EF 4.0體驗。

您還可以得到一些很酷的n層的情況下,這意味着你可以通過你的對象到另一層,它可以修改和回報他們,你仍然可以堅持他們的數據庫支持。其他層不需要知道任何有關實體框架的知識,因此您可以清楚地區分關注點。

相關問題