[轉貼] 項目使用中Linq使用總結

2012022813:19

本文旨在和網友分享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麼?

作者:RyanDing
出處:http://www.cnblogs.com/ryanding/