成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linq擴展方法簡單描述

開發 后端
這里介紹Linq擴展方法基本上屬于可通過實例語法調用的靜態方法。上述查詢問題的根源是我們試圖向 IEnumerable<T> 添加方法。

本文向大家介紹Linq擴展方法,可能好多人還不了解Linq擴展方法,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

Linq擴展方法

結果證明,更好的語法將以被稱為Linq擴展方法的語言功能形式出現。Linq擴展方法基本上屬于可通過實例語法調用的靜態方法。上述查詢問題的根源是我們試圖向 IEnumerable<T> 添加方法。但如果我們要添加運算符,如 Where、Select 等,則所有現有和未來的實現器都必須實現那些方法。盡管那些實現絕大多數都是相同的。在 C# 中共享“接口實現”的唯一方法是使用靜態方法,這是我們處理以前使用的EnumerableExtensions 類的一個成功方法。

假設我們轉而將 Where 方法編寫為Linq擴展方法。那么,查詢可重新編寫為:

  1. IEnumerable<Customer> locals = customers.Where(c => c.ZipCode == 91822); 

對于此簡單查詢,該語法近乎***。但將 Where 方法編寫為Linq擴展方法的真正含義是什么呢?其實非常簡單。基本上,因為靜態方法的簽名發生更改,因此“this”修飾符就被添加到***個參數:

  1. public static IEnumerable<T> Where<T>(this IEnumerable<T> items, Func<T, bool> predicate) 

此外,必須在靜態類中聲明該方法。靜態類是一種只能包含靜態成員,并在類聲明中用靜態修飾符表示的類。這就它的全部含義。此聲明指示編譯器允許在任何實現 IEnumerable<T> 的類型上用與實例方法相同的語法調用 Where。但是,必須能夠從當前作用域訪問 Where 方法。當包含類型處于作用域內時,方法也在作用域內。因此,可以通過 Using 指令將Linq擴展方法引入作用域。

Linq擴展方法有助于簡化我們的查詢示例,但除此之外,這些方法是不是一種廣泛有用的語言功能呢?事實證明Linq擴展方法有多種用途。其中一個最常見的用途可能是提供共享接口實現。例如,假設您有以下接口:

  1. interface IDog  
  2. {  
  3. // Barks for 2 seconds  
  4. void Bark();  
  5. void Bark(int seconds);  

請注意,此查詢的返回類型不同,它是 IEnumerable<string> 而不是 IEnumerable<Customer>。這是因為我們僅從 select 語句中返回客戶名稱。

【編輯推薦】

  1. LINQ匿名類型分析
  2. LINQ Where子句介紹
  3. LINQ使用Where擴展方法
  4. 介紹LINQ一些強大功能
  5. Linq使用Select淺談
責任編輯:佚名 來源: IT168
相關推薦

2009-09-17 11:29:50

Linq擴展方法

2009-09-09 15:28:43

Linq to obj

2009-09-14 10:57:46

LINQ入門

2009-09-18 16:00:07

LINQ架構

2009-09-15 16:26:36

Linq orderb

2009-09-08 09:24:50

LINQ查詢

2009-09-17 09:24:57

Linq實現分頁

2009-09-14 10:20:52

LINQ查詢語法

2009-09-10 09:09:40

Linq實體繼承

2009-09-11 12:32:33

LINQ表達式

2009-09-09 13:07:37

創建Linq數據庫

2009-09-10 16:32:19

LINQ Where

2009-09-09 11:24:13

Linq使用數據表

2009-09-09 15:37:27

Linq DataLo

2009-09-10 10:37:15

LINQ to SQL

2009-09-16 09:38:27

LINQ To SQL

2009-09-14 15:43:12

Linq Settin

2009-09-10 15:26:03

Linq City集合

2009-08-26 15:53:48

C#擴展方法

2009-09-14 09:49:08

Linq擴展函數
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲国产高清高潮精品美女 | 国产99精品 | 在线中文字幕av | 视频一区在线观看 | 久久国产精品精品 | 成人国产综合 | www.9191.com| 国产精品2区 | av黄色在线 | 羞羞视频网站免费看 | 国产精品高潮呻吟 | 欧美一二区 | 亚洲精品一区二区 | 国产精品国产成人国产三级 | 成人av影院 | 国产av毛片| 日韩精品一区二区三区免费观看 | 日本精品久久 | 久久精品a级毛片 | 999久久久| 久久久久国产精品午夜一区 | 亚洲人成人一区二区在线观看 | 亚洲精品日日夜夜 | 久久精品视频免费观看 | 亚洲精品视频在线看 | 亚洲综合色视频在线观看 | 亚洲人人 | 国产精品毛片一区二区在线看 | 亚洲欧洲精品在线 | 在线观看中文字幕视频 | 欧美一区二区久久 | 欧美激情亚洲 | 成人精品久久 | 日本不卡视频 | 免费的黄色片子 | 蜜桃视频在线观看免费视频网站www | 99爱国产| 福利视频网站 | 三级在线观看 | 日韩一区二区免费视频 | 日日干夜夜操天天操 |