您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何實現LINQ查詢語句,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
實現LINQ查詢語句有三個步驟,他們分別是獲取數據源(任何查詢的必備工作)、創建查詢、執行查詢。小編就從這三個方面對實現LINQ查詢語句做簡單的介紹。
示例:
class IntroToLINQ { static void Main() { //獲取數據源(此處由一個數組充當) int[] numbers = new int[7]{0,1,2,3,4,5,6}; //創建查詢(numQuery 是 IEnumerable 類型) var numQuery = from num in numbers where (num%2) == 0 select num; // 執行查詢 foreach(int num in numQuery) { Console.write("{0,1}",num); } } }
實現LINQ查詢語句之數據源:
上面示例中,數據源是一個數組,隱式支持泛型IEnumerable(T)接口,而支持IEnumerable(T)或派生接口的類型稱為"可查詢類型"。因此數組即可用LINQ進行查詢。
如果數據源還沒有作為可查詢類型出現在內存中,則LINQ提供程序必須以此方式表示數據源。例如,LINQ to XML將 xml文檔加載到可查詢的XElement類型中:
using System.Xml.Linq XElement contacts = XElement.Load(@"c:\my.xml");//XElement 表示一個xml元素
在LINQ to SQL 中,必須先創建對象關系映射,然后針對這些對象編寫查詢。LINQ會處理對象查詢與數據庫間的通信。
using System.Data.Linq; DataContext db = new DataContext(@"c:\northwind.mdf");
實現LINQ查詢語句之創建查詢:
查詢要先存儲在查詢變量中,并用查詢表達式進行初始化。這個查詢變量不執行任何操作也不返回數據,只有在執行查詢時用來存儲為生成結果而必須的信息。
實現LINQ查詢語句之執行查詢:
上例中使用foreach的地方就是檢索查詢結果的地方,它在創建后才執行,因此稱為延遲執行,num保存返回的值。
當需要用到聚合函數查詢時,則是強制立即執行
var numQuery = from num in numbers where (num%2) == 0 select num; int evenNumCount = evenNumCount.Count();
若普通查詢也要立即執行,可以在查詢語句后調用ToList()或ToArray()方法。
以上就是如何實現LINQ查詢語句,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。