日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
LINQ數(shù)據(jù)源詳細(xì)描述

LINQ有很多值得學(xué)習(xí)的地方,這里我們主要介紹LINQ數(shù)據(jù)源,包括介紹LINQ查詢表達(dá)式等方面。

LINQ數(shù)據(jù)源

在上一個示例中,由于數(shù)據(jù)源是數(shù)組,因此它隱式支持泛型 IEnumerable<(Of <(T>)>) 接口。這一事實意味著該數(shù)據(jù)源可以用 LINQ 進(jìn)行查詢。在 foreach 語句中執(zhí)行查詢,而 foreach 要求使用 IEnumerable 或 IEnumerable<(Of <(T>)>)。支持 IEnumerable<(Of <(T>)>) 或派生接口(如泛型 IQueryable<(Of <(T>)>))的類型稱為“可查詢類型”。

可查詢類型不需要進(jìn)行修改或特殊處理就可以用作 LINQ數(shù)據(jù)源。如果LINQ源數(shù)據(jù)還沒有作為可查詢類型出現(xiàn)在內(nèi)存中,則 LINQ 提供程序必須以此方式表示源數(shù)據(jù)。例如,LINQ to XML 將 XML 文檔加載到可查詢的 XElement 類型中:

 
 
 
  1. // Create a data source from an XML document.  
  2. // using System.Xml.Linq;  
  3. XElement contacts = XElement.Load(@"c:\myContactList.xml"); 

在 LINQ to SQL 中,首先手動或使用 對象關(guān)系設(shè)計器(O/R 設(shè)計器) 在設(shè)計時創(chuàng)建對象關(guān)系映射。針對這些對象編寫查詢,然后由 LINQ to SQL 在運行時處理與數(shù)據(jù)庫的通信。在下面的示例中,Customer 表示數(shù)據(jù)庫中的特定表,并且 Table 支持派生自 IEnumerable<(Of <(T>)>) 的泛型 IQueryable<(Of <(T>)>) 接口。

 
 
 
  1. DataContext db = new DataContext(@"c:\northwind\northwnd.mdf"); 

有關(guān)如何創(chuàng)建特定類型的數(shù)據(jù)源的更多信息,請參見各種 LINQ 提供程序的文檔。但基本規(guī)則非常簡單:LINQ數(shù)據(jù)源是支持泛型 IEnumerable<(Of <(T>)>) 接口或從該接口繼承的接口的任意對象。

LINQ查詢

查詢指定要從數(shù)據(jù)源中檢索的信息。查詢還可以指定在返回這些信息之前如何對其進(jìn)行排序、分組和結(jié)構(gòu)化。查詢存儲在查詢變量中,并用查詢表達(dá)式進(jìn)行初始化。為使編寫查詢的工作變得更加容易,C# 引入了新的查詢語法。

上一個示例中的查詢從整數(shù)數(shù)組中返回所有偶數(shù)。該查詢表達(dá)式包含三個子句:from、where 和 select。(如果您熟悉 SQL,您會注意到這些子句的順序與 SQL 中的順序相反。) from 子句指定數(shù)據(jù)源,where 子句應(yīng)用篩選器,select 子句指定返回的元素的類型。LINQ查詢表達(dá)式(C# 編程指南)一節(jié)中詳細(xì)討論了這些子句和其他查詢子句。目前需要注意的是,在 LINQ 中,查詢變量本身不執(zhí)行任何操作并且不返回任何數(shù)據(jù)。它只是存儲在以后某個時刻執(zhí)行查詢時為生成結(jié)果而必需的信息。有關(guān)在幕后是如何構(gòu)建查詢的更多信息,請參見標(biāo)準(zhǔn)查詢運算符概述。


標(biāo)題名稱:LINQ數(shù)據(jù)源詳細(xì)描述
網(wǎng)站地址:http://m.5511xx.com/article/cdddhjd.html