2008-12-08 44 views
7

我想知道人們對通過LINQ-to-SQL支持實體框架的決定有何看法?我有一個我最初在LINQ-to-SQL中開發的應用程序。我發現它是我們應用程序的完美解決方案。關於實體框架的思考

嘗試移植到實體框架時,我很驚訝它有多粗糙。恕我直言,甚至沒有準備好黃金時間。沒有延遲加載,沒有POCO,對繼承的可怕依賴。我發現它在很大程度上不適用於我的情況,而是決定堅持使用LINQ-to-SQL,直到某種程度上,此實體框架可以得到更多的優化。

其他人有類似的經驗嗎?

回答

4

這幾乎是我的看法。看到我以前的答覆here。另外一個問題不是針對EF中的問題,而是:它有一些小問題。例如(除了現有的選項):

  • Expression.Invoke沒有支撐(再使用表達式樹,以形成更復雜的表達式)
  • 爲表UDF的無支持,這可以被用來創建明確定義的,在數據​​庫中調用的方法,這些方法仍然可組合與排序/跳/取等

LINQ到SQL同時處理就好了......

+0

關於EF4的任何想法?我很好奇它是否能解決你的問題。 – 2010-06-02 14:13:31

2

我認爲這取決於應用程序平臺。當我的團隊着手創建一個新的ASP.net應用程序時,我們想要與EF一起使用...但是在完成了一段時間之後,我們使用了Linq-To-SQL。在Web環境中,管理L2S數據上下文要容易得多。此外,我們喜歡L2S實體公開原始Id字段(例如EmployeeTypeId),而不像EF,它只暴露子實體。在一個Web環境中,很多時候你並不需要額外的信息,這個Id就足夠了,因爲它是對已經加載(並且可能被緩存)的下拉列表的引用。

+0

不公開ID是我的另一個問題。另外,如果你想支持許多人,你只能使用ID設計一個表,而不能使用其他字段,否則將無法管理這種關係。 – Jiyosub 2008-12-09 04:17:43

1

L2S是,它是什麼更成熟爲...而做。

而且我仍然會將EF視爲BETA釋放。

圍繞EF有很多討論,你可以在相關的問題中找到更多。

1

我同意。 Entity Framework v1(.net 3.5 SP1版本)中存在太多錯誤和設計缺陷,使其可用於真實世界的開發。雖然EFv4看起來更有希望...

1

我聽說L2S正在迅速走向渡渡鳥的道路。關於轉向開源的一點點喋喋不休 - 但微軟的ADO.NET組織正在計劃將所有的努力都推向EF ......

也很傷心,因爲我覺得Linq2SQL非常容易和移植我的所有代碼的想法讓我有點不舒服。

Update on LINQ to SQL and LINQ to Entities Roadmap