2009-11-24 63 views
0

我有一箇中等規模的Web應用程序與基於SQL Server的後端數據庫。合併討論:LinqDataSource或ObjectDataSource?

我的DB概述 - Generic suggestions for SQL 2005 Framework\Design and Implementation

我的應用程序框架概述 - L2S (LINQ to SQL) or EF (Entity Framework)

所以,現在,我們是在一個快速發展軌道。我們已經「凍結」了遷移到MVC架構,並且爲了讓它更簡單/更快,我們選擇了LINQ-to-SQL而不是實體框架(同時考慮到幾個月內會有更好的實體框架v2.0出現) 。我希望這是對的。

現在,我重新審視舊代碼 - 在過去 我們使用ODS(ObjectDataSource控件) 在所有的地方的搜索& CRUD 操作。那麼, 替換爲新的LinqDataSource (LDS)是個好主意。

我只是找到了一個計算器有用的帖子: SqlDataSource vs ObjectDataSource

我已經提到很多LDS教程。一個偉大的 '系列' 我foun在CodeProject:

Part1: http://www.codeproject.com/KB/aspnet/LinqDataSourcebasics.aspx 
Part2: http://www.codeproject.com/KB/aspnet/LinqDataSourcebasics1.aspx 
Part3: http://www.codeproject.com/KB/aspnet/LinqDataSource2.aspx 
Part4: http://www.codeproject.com/KB/aspnet/LinqDataSource3.aspx 

我還參觀了像幾個 '比較' 的討論 - (好一個)http://www.eggheadcafe.com/aspnet/how-to/146339/linqdatasource-vs-objectd.aspx

對LINQ著名ScouttGU的5個部分組成的系列 - http://weblogs.asp.net/scottgu/archive/2007/07/16/linq-to-sql-part-5-binding-ui-using-the-asp-linqdatasource-control.aspx

我不能再深入了 - 我需要知道專家們對此有何評論。 我的傾向是爲了使用ODS,因爲它提供了更好的抽象(不像(幾乎)2層LDS)。而且對於未來的MVC遷移,這個寒暄幫助更好地構建應用程序。

其他參考: http://www.dotnetspider.com/forum/165941-What-Difference-between-ObjectDataSource.aspx

+0

聽起來像是你的架構決定 - 但它如果你關心的性能和可擴展性...去冒險的方式對本地異步調用支持是非常重要的,因爲是命令批處理和多個結果集,這是不但由LINQ to SQL支持。 – RickNZ 2009-11-25 13:47:51

+0

嗯,我很欣賞的關注\關於「批量語句執行」和「多結果集」之分。我不知道「本地異步調用」。 我已經提出了一個基本的架構,但我沒有看到什麼「風險」,因爲我能夠通過使用視圖來處理多ResultSet的場景,有一個爲批量更新一v.less概率。 – 2009-11-25 15:11:34

回答

0

希望這會成爲人們尋求在兩者之間選擇一個統一的[R & d。對我來說,它已經很長時間了,現在我正在使用MVC3和SQL Server作爲後端。所以我有一個L2S(LINQ to SQL)層,它可以幫助我獲得完美的「OR」映射,並允許我以對象級別而不是其他任何形式操作事物。 (它像在Win XP & Vista(EF)之間進行選擇)我留在L2S中,它的工作就像一個魅力!