我從來沒有在我的任何項目中使用LINQ,我一直在我的商業應用項目中使用ado.net/OR工具,所以我想知道 LINQ有什麼好處?爲什麼和什麼時候有人應該使用LINQ?爲什麼以及何時使用LINQ?
12
A
回答
10
只是澄清了LINQ和LINQ到SQL的概念之間的差異。
LINQ是一個查詢語法,而不是語言或O/RM。您可以在LINQ提供的語法之上構建一個O/RM。
因爲我收集你的問題是真的什麼時候使用LINQ to SQL我只會解決這個問題。
- 永遠只針對MS SQL 2000+
- 做的RAD
我使用LINQ to SQL的一對夫婦商用:
的LINQ to SQL時你最好使用產品和相當一部分我自己的產品,並發現這些好處:
- 熟悉的語言代碼(C#/ VB.NET)
- 容易維護(我們有比員工SQL大師更.NET)
- 生成的SQL是結構良好,非常最佳
- 允許的業務規則直接轉換爲SQL同時仍保持所有的業務邏輯在一個單一的項目
至於LINQ因爲我用它一個概念的時候,因爲我明白它可以/不可以做,如何正確使用它。像任何語言功能一樣,如果人們不瞭解它是什麼以及如何使用它,它可能很容易被錯過使用。以下筆者推薦博客得到一些LINQ下來的概念:
0
通過DMBL設計器,LINQ-to-SQL的功能和輕量級ORM一樣好。它具有內置的語言支持,並使用標準訪問模式訪問實體變得非常簡單。我在所有新項目中都使用它,並發現它對簡單性和可測試性來說是一個重大改進。有更多的信息在這post。
3
這是一個公平的問題,但已經被問過很多次了。看到這些問題早在深度和覆蓋範圍更廣更:
1
LINQ是某種通用的查詢語言。如果您瞭解它,則不必將自己限制在數據庫中,但也可以使用它來操縱XML文件或JSON文件或數組,列表和dictionairies <,>。這很棒。
甚至還有LinqToFlickr,LinqToExcel和LinqToGoogle。它遠不止是一個OR映射器。參見:http://blogs.msdn.com/charlie/archive/2008/02/28/link-to-everything-a-list-of-linq-providers.aspx
相關問題
- 1. 爲什麼以及何時使用process.nextTick?
- 2. 爲什麼以及何時使用TreeMap
- 3. 爲什麼以及何時使用__noop?
- 4. Hibernate Search使用情況,何時使用以及爲什麼
- 5. 爲什麼以及何時需要Azure?
- 6. RetrieveMultipleRequest&Service.Retrievemultiple - 何時以及爲什麼?
- 7. 何時以及爲什麼sprintf失敗?
- 8. 何時,爲什麼以及如何在Redux中使用Action Creators?
- 9. 何時,爲什麼以及如何使用包裝?
- 10. 何時以及爲什麼我們需要使用COM?
- 11. 何時以及爲什麼要使用ClassName:this(null)?
- 12. 何時以及爲什麼要使用C#訪問方法
- 13. 何時以及爲什麼要使用namedtuple而不是字典?
- 14. 何時以及爲什麼要在Ruby中使用Loop構造
- 15. C++中的堆棧。他們爲什麼以及何時使用?
- 16. 何時以及爲什麼要使用getResources()?
- 17. 爲什麼以及何時使用基於EJB的Web服務?
- 18. 何時以及爲什麼要使用load_host_keys和load_system_host_keys?
- 19. 何時以及爲什麼要使用performSelector - iOS
- 20. 何時以及爲什麼在asp.net mvc 2中使用TryUpdateModel?
- 21. 爲什麼(以及何時)使用存儲過程?
- 22. 爲什麼以及何時在asp.net中使用.mdf文件c#
- 23. 何時以及爲什麼要在代碼中使用位域?
- 24. 何時以及爲什麼要使用NSUserDefaults的synchronize()方法?
- 25. 何時以及爲什麼要使用Django開發服務器?
- 26. 爲什麼以及何時在PHP中使用&$結果?
- 27. 何時以及爲什麼要使用initWithNibName:bundle:在開發中
- 28. 爲什麼以及何時使用AngularJS中的截斷
- 29. 何時以及爲什麼要使用JumboEnumSet
- 30. 何時以及爲什麼要在Matlab中使用cellfun?