2010-04-24 31 views
3

到SQL嗯,我是新來這個ORM的東西。我們必須創建一個大型項目。我閱讀了LINQ to SQL。在高風險項目中使用它是否合適?我個人發現沒有問題,但事情是,一旦啓動就不會再回頭了。所以我需要從MSDN的ORM專家那裏得到一些反饋。實體框架會更好嗎? (我對LINK to SQL有所懷疑,因爲我已經閱讀並聽到負面反饋)使用LINQ在ASP.NET MVC2項目

我將使用MVC2作爲框架。所以請在這方面提供關於LINQ to SQL的反饋。 Q2)我也是存儲過程的粉絲,因爲它們是預先計算好的東西,我從來沒有工作過。我知道LINQ to SQL支持存儲過程,但是放棄存儲過程是可行的看到美麗的數據訪問層不費吹灰之力,因爲我們也需要快速開發。

Q3)如果LINK to SQL數據庫中某些字段所需的某些內容發生更改,數據訪問層將如何適應這些更改。

+0

這裏見我的回答:http://stackoverflow.com/questions/2701952/dump-linq-to-sql-now-that-entity-framework-4-0-has-been-released/2702016#2702016 - - 這幾乎是同一個問題,我的答案也適用於此。 – 2010-04-24 08:27:56

回答

2

當涉及到LINQ到SQL VS實體框架,我強烈建議使用實體框架。隨着.NET 4.0和VS2010的發佈,微軟在Entity Framework(EF)4.0中增加了很多優點。我只想提一下幾點:POCO和NTier的支持(這意味着你可以有一個單獨的庫,包含你簡單的實體類,當然EF仍然會知道它們),延遲加載,Sql查詢優化...還有你可以讓EF生成實體(並且您可以選擇修改T4生成模板),或者如果您需要更多控制,可以手動創建它們。另外,如果你的應用確實很大,用EF 4,現在你可以很好地分離你的圖層(你可以創建你的Mocks fo測試等)。我不是一個Web開發人員,所以我不能在這個問題上給你任何關於mvc2的提示。 q2-q3) - 在EF中,您可以進行預編譯查詢 - 如果稍後您觀察員的查詢性能不是您所需要的。這會加快事情的速度。如果您打算使用EF,並且添加了一些更改爲您的數據庫,則可以輕鬆地通過點擊更新您的模型。 我知道我在EF上喋喋不休,而不是Linq到sql :),但是嘿...我相信這適合您的需求,並且您應該明確檢查此項目。另外,我不知道微軟會在未來增加多少功能/投資於LinqToSql。

歡呼聲,那肯定是抓住了我的注意

+1

EF4仍然是一個兩層的方法,它比Linq-to-SQL承載更多的開銷。對於只有SQL Server的簡單場景,我仍然傾向於使用Linq-to-SQL。對於企業應用和更復雜的場景,請使用EF4。 – 2010-04-24 08:54:37

0

確定預編譯查詢。

+0

我可以問你,什麼做你做2個註冊? – abatishchev 2010-04-24 09:10:42

相關問題