LINQ,語言集成查詢(Language Integrated Query)是一組用於c#和Visual Basic語言的擴展。它容許編寫C#或者Visual Basic代碼以查詢數據庫相同的方式操做內存數據。相似於SQL。 程序員
從技術角度而言,LINQ定義了大約40個查詢操做符,如select、from、in、where以及order by(C#中)。使用這些操做符能夠編寫查詢語句。不過,這些查詢還能夠基於不少類型的數據,每一個數據類型都須要一個單獨的LINQ類型。數據庫
LINQ TO SQL是LINQ技術在數據庫方面的應用。數據庫技術從OLEDB,ODBC到ADO,在到ADO.NET到如今的LINQ TO SQL,讓程序員操做數據庫愈來愈簡單。 LINQ 的宗旨就是讓查詢無處再也不,這固然要包括對數據庫的查詢。LINQ不只僅能夠對數據庫進行查詢,一樣CUID(Create,Update,Insert,Delete)均可以實現,並且很是方便。編程
一 LINQ中的增刪改查:c#
下面逐一對查詢以及增刪改方面進行介紹:數組
1 建立函數
要想查詢數據庫中表的數據,就要先創建對數據庫表的映射,就像要想使用ADO.NET就須要先把數據庫中的數據存到DataSet中,代碼以下:spa
以上就是對數據表的一個映射。創建好對錶的映射以後,就能夠對其進行相應的操做了。3d
2 查詢orm
下面是查詢代碼:(使用select進行查詢)xml
以上就是對數據庫的查詢,咱們能夠寫出很複雜的查詢來,其實在內部,LINQ會把你寫的LINQ語句,轉換成SQL語句送到數據庫中去執行。而後返回相應的結果。若是你們想看轉換後的SQL語句,能夠在創建完鏈接以後加上這樣一句:db.Log=Console.Out。這樣程序將自動輸出SQL語句和查詢結果。
3 更改
如下是更改例子:
上述代碼中經過Add()來進行添加。
4 刪除
經過Remove()來進行刪除:
二 LINQ與XML
關於XML,W3C有一套DOM模型,C#語言有一套在DOM模型下操做XML的類庫。可是在LINQ出現之後,微軟又從新作了一套關於XML的模型,並且操做起來同那套DOM模型沒什麼兩樣,可是更加的簡單。
下面用代碼是一個用LINQ模型操做XML的示例:
能夠看出LINQ模型的簡單性。咱們還能夠從LINQ模型上看出XElement的重要性。使用XElement不只能夠從頭建立xml文件,還可使用Load的方法從文件加載。還能夠從數據庫中取出所需元素,這就要用到LINQ TO SQL的東西了,一樣能夠從數組中取出元素。操做完成後可使用Save方法進行保存。
下面簡單介紹一下對XML的增刪查改:
1插入
2查詢
咱們看到在輸出XML元素的時候並不須要對每一個元素進行強制的類型轉換,這裏C#編譯器已經作了這些事情,它會在輸出的時候調用每一個元素的ToString()方法。
3修改
固然一樣可使用SetElement方法,這裏纔是它的用武之地。
4刪除
刪除元素還可使適用SetElement方法,把某一元素設置爲null也就是刪除了這元素。
從上面簡單的介紹咱們能夠清楚的看到,使用LINQ操做XML是多麼的簡單,這也是它的一大優點。
三 LINQ中的常見函數
LINQ提供了不少函數操做,如下是經常使用的一些函數的列表:
先說明一下第二欄LAZY的意思。咱們知道有一個術語叫:Lazy Evalution。就是說不到用的時候程序不對它進行求值。
正由於LINQ提供的這些操做使得它的功能很是強大,具體用法你們能夠具體去查一查,在實際編程中去使用體會。關於LINQ就先介紹到這,下一篇博客將爲你們講解如何用C#開發WPF程序。