LINQ基礎(chǔ)概念總結(jié)
要想更好地了解LINQ,首先需要了解LINQ基礎(chǔ)概念。LINQ,全稱(chēng)語(yǔ)言級(jí)集成查詢(xún)(Language INtegrated Query),包含DLinq和XLinq。LINQ的出現(xiàn)主要是為了解決降低訪(fǎng)問(wèn)和整合信息數(shù)據(jù)( accessing and integrating information )的復(fù)雜度的問(wèn)題。
LINQ基礎(chǔ)概念中最重要的是兩個(gè)類(lèi)和兩個(gè)接口。
IEnumerable
IQuerable
Enumerable類(lèi),它通過(guò)對(duì)IEnumerable
Queryable類(lèi):它通過(guò)對(duì)IQueryable
根據(jù)數(shù)據(jù)源類(lèi)型,可以將LINQ技術(shù)分成如下所述的4個(gè)主要技術(shù)方向。
LINQ to Object:數(shù)據(jù)源為實(shí)現(xiàn)了接口IEnumerable
LINQ to ADO.NET:數(shù)據(jù)源為ADO.NET數(shù)據(jù)集,這里將數(shù)據(jù)庫(kù)中的表結(jié)構(gòu)映射到類(lèi)結(jié)構(gòu),并通過(guò)ADO.NET從數(shù)據(jù)庫(kù)中獲取到數(shù)據(jù)集到內(nèi)存中,通過(guò)LINQ進(jìn)行數(shù)據(jù)查詢(xún)。
LINQ to XML:數(shù)據(jù)源為XML文檔,這里通過(guò)XElement、XAttribute等類(lèi)將XML文檔數(shù)據(jù)加載到內(nèi)存中,通過(guò)LINQ進(jìn)行數(shù)據(jù)查詢(xún)。
除了這3種常見(jiàn)的數(shù)據(jù)類(lèi)型外,.NET3.5還為用戶(hù)擴(kuò)展LINQ提供了支持,用戶(hù)可以根據(jù)需要實(shí)現(xiàn)第三方的LINQ支持程序,然后通過(guò)LINQ獲取自定義的數(shù)據(jù)源。
本文來(lái)自Kevin的博客園博文《LINQ基礎(chǔ)概念》
【編輯推薦】