本文旨在和網友分享Linq在項目中的實踐,曾經我參與過的項目都能看見Linq的影子。(LinqTosql、LinqToString、LinqToXML、LinqToEntity 等等...)個人認為Linq是近年來微軟推出的非常成功的一項技術。比如,當我熟悉Linq之後,再用SQL寫商業邏輯時,感覺已經不再適應了。如果您還沒有系統的研究過Linq,希望本文可以給您帶來幫助。
本文將從以下幾個方面介紹Linq在實際開發中的應用範圍:
一、LinqToXML
在測試工程內加入xml文件:
用Linq操作XML文件,可以增刪改查xml,示例代碼如下:
二、LinqToEntity
用EF操作NorthWind 數據庫:
注,生成的sql語句分別為:
Inner Join : SELECT \r\n1 AS [C1], \r\n[Extent1].[CompanyName] AS [CompanyName], \r\n[Extent2].[OrderDate] AS [OrderDate]\r\nFROM [dbo].[Customers] AS [Extent1]\r\nINNER JOIN [dbo].[Orders] AS [Extent2] ON [Extent1].[CustomerID] = [Extent2].[CustomerID]
Outer Join: SELECT \r\n1 AS [C1], \r\n[Extent1].[CompanyName] AS [CompanyName], \r\n[Extent2].[OrderDate] AS [OrderDate]\r\nFROM [dbo].[Customers] AS [Extent1]\r\nLEFT OUTER JOIN [dbo].[Orders] AS [Extent2] ON [Extent1].[CustomerID] = [Extent2].[CustomerID]
三、LinqToFile
Linq操作磁盤文件:
四、LinqToArray
Linq操作數組:
小結
以上四點對Linq的總結相對比較全面了,為了讓我們的代碼更優美,更便於維護,還有理由不用Linq麼?