天天看點

Linq用法筆記

一、什麼是Linq?

LINQ即Language Integrated Query(語言內建查詢),LINQ是內建到C#和Visual Basic.NET這些語言中用于提供查詢資料能力的一個新特性。

LINQ是一種用來進行資料通路的程式設計模型,Linq可以用相同的文法通路不同的資料源,比如xml、資料庫、系統資料庫、事件日志等。

二、Linq包含哪些部分?

1、Linq to Sql元件:可以查詢關系型資料庫的資料,并可以提供其他操作,如檢索、插入、修改、删除、排序、聚合、分區等。

2、Linq to DataSet元件:查詢DataSet對象中的資料。

3、Linq to Object元件:可以查詢IEnumerable或是IEnumerable<T> 集合對象,即能夠查詢任何可以枚舉的集合,如數組(Array和ArrayList)、泛型字典Dictinary<T>等,以及使用者自定義的集合,而不需要使用Linq提供程式或API。

4、Linq to XML元件:查詢和操作XML結構的資料。

5、Linq to Entities:是 Entity Framework 的一部分并且取代 LINQ to SQL 作為在資料庫上使用 LINQ 的标準機制。Entity Framework 是行業領先的對象-關系映射(ORM)系統。可以和多種資料庫一起使用,并支援各種靈活、複雜的資料模型。

三、Linq的一些用法

1、簡單的LINQ查詢

<code>static</code> <code>void</code> <code>Main(</code><code>string</code><code>[] args)</code>

<code>{</code>

<code>    </code><code>int</code><code>[] marks = { 60, 77, 82, 46, 59, 98, 100, 84 };</code><code>//定義一個數組</code>

<code>    </code><code>var</code> <code>good = </code><code>from</code> <code>m </code><code>in</code> <code>marks</code><code>//使用LINQ找到所有數值大于等于60的數字</code>

<code>               </code><code>where</code> <code>m &gt;= 60</code>

<code>               </code><code>select</code> <code>m;</code>

<code>    </code><code>foreach</code> <code>(</code><code>int</code> <code>mark </code><code>in</code> <code>good)</code><code>//循環每一個結果</code>

<code>    </code><code>{</code>

<code>        </code><code>Console.WriteLine(mark);</code><code>//輸出結果</code>

<code>    </code><code>}</code>

<code>}</code>

  

2、使用Lambda表達式的LINQ查詢

3、使用LINQ查詢對象集合

四、Linq有什麼好處?

   1、容易上手,學習成本低  

   2、可以很大程度上減少代碼量。   

   3、更快開發錯誤更少的應用程式。   

   4、可以很容易的合并資料源。   

   5、讓新開發者開發效率更高。   

   6、任何對象或資料源都可以定制實作Linq擴充卡,為資料互動帶來真正友善。

本文轉自xmgdc51CTO部落格,原文連結http://blog.51cto.com/12953214/1941212 ,如需轉載請自行聯系原作者