LINQ 提供一種統(tǒng)一的方式,讓我們能在C#語言中直接查詢和操作各種數(shù)據(jù)。??
LINQ是用來描述數(shù)據(jù)訪問總體方式的術(shù)語。LINQ to Object是針對實現(xiàn)了IEnumerable<T>的對象的LINQ;LINQ to SQL是針對關(guān)系數(shù)據(jù)庫的LINQ;LINQ to xml是針對XML文檔的LINQ。?
?
LINQ除了提供一個統(tǒng)一的API來操作各種數(shù)據(jù),并且為我們提供了編譯時類型檢查和動態(tài)創(chuàng)建查詢表達(dá)式的能力。?
局部變量用var,指示編譯器根據(jù)初始化語句右側(cè)的的表達(dá)式推測它的類型?
用途:?
var an=new {name=“tom”,age=18};?
var an=linq語句;
public string FirstName?{?get;set ;}
Point p= new Point { X = 10, Y = 20};?
varperson = from a in list select new { name=a.FirstName};
var worker = new { FirstName = "Vincent", LastName = "Ke", Level = 2 };?
?
匿名類型使用new運算符和對象初始值設(shè)定項創(chuàng)建的?
匿名類型通常在查詢表達(dá)式的select字句中?
匿名類型是有一個或多個公共只讀 屬性組成的類型,沒有其他成員(方法、事件)?
匿名類型是直接從對象派生的引用類型,編譯器會提供一個名稱?
如果多個匿名類型有相同屬性(順序、個數(shù)、類型),編譯器將這些匿名類型視為相同類型
List<int> evenNumbers = list.FindAll(i => (i % 2) == 0);?
?
格式:?
(參數(shù)列表)=>表達(dá)式或語句塊?
(x,y)=>x*y //多參數(shù),隱式類型=>表達(dá)式?
x=>x*10 //單參數(shù),隱式類型=>表達(dá)式?
X=>{return x*8} //單參數(shù),隱式類型=>語句塊?
(int i)=>x*8 //單參數(shù),顯示類型=>表達(dá)式?
LINQ體驗(4)——LINQ簡介和LINQ to SQL語句之Where
單條件 多條件 First()形式
LINQ體驗(5)——LINQ to SQL語句之Select/Distinct和Count/Sum/Min/Max/Avg
LINQ體驗(6)——LINQ to SQL語句之Join和Order By
LINQ體驗(7)——LINQ to SQL語句之Group By/Having和Exists/In/Any/All/Contains
LINQ體驗(8)——LINQ to SQL語句之Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods
LINQ體驗(9)——LINQ to SQL語句之Insert/Update/Delete操作
LINQ體驗(10)——LINQ to SQL語句之開放式并發(fā)控制和事務(wù)
LINQ體驗(11)——LINQ to SQL語句之Null語義和String/DateTime方法
LINQ體驗(12)——LINQ to SQL語句之對象標(biāo)識和對象加載
LINQ體驗(13)——LINQ to SQL語句之運算符轉(zhuǎn)換和ADO.NET與LINQ to SQL
LINQ體驗(14)——LINQ to SQL語句之存儲過程
LINQ體驗(15)——LINQ to SQL語句之用戶定義函數(shù)
LINQ體驗(16)——LINQ to SQL語句之DataContext
LINQ體驗(17)——LINQ to SQL語句之動態(tài)查詢
LINQ體驗(18)——LINQ to SQL語句之視圖和繼承支持
新聞熱點
疑難解答