在上兩篇我介紹了c#3.0新語特性和改進,這些新特性在我們編寫程式時為我們提供了非常大的幫助。從這篇開始,我們開始一起來**linq。
linq是language integrated query的簡稱,它是整合在.net程式語言中的一種特性。已成為程式語言的乙個組成部分,在編寫程式時可以得到很好的編譯時語法檢查,豐富的元資料,智慧型感知、靜態型別等強型別語言的好處。並且它同時還使得查詢可以方便地對記憶體中的資訊進行查詢而不僅僅只是外部資料來源。
linq定義了一組標準查詢操作符用於在所有基於.net平台的程式語言中更加直接地宣告跨越、過濾和投射操作的統一方式,標準查詢操作符允許查詢作用於所有基於ienumerable介面的源,並且它還允許適合於目標域或技術的第三方特定域操作符來擴大標準查詢操作符集,更重要的是,第三方操作符可以用它們自己的提供附加服務的實現來自由地替換標準查詢操作符,根據linq模式的習俗,這些查詢喜歡採用與標準查詢操作符相同的語言整合和工具支援。
我們來總體看看linq架構
在.net3.5下,微軟為我們提供了一些命名空間
linq包括五個部分:linq to objects、linq to datasets、linq to sql、linq to entities、linq to xml。
linq to sql全稱基於關係資料的.net語言整合查詢,用於以物件形式管理關係資料,並提供了豐富的查詢功能。其建立於公共語言型別系統中的基於sql的模式定義的整合之上,當保持關係型模型表達能力和對底層儲存的直接查詢評測的效能時,這個整合在關係型資料之上提供強型別。
linq to xml在system.xml.linq命名空間下實現對xml的操作。採用高效、易用、記憶體中的xml工具在宿主程式語言中提供xpath/xquery功能等。
說了這麼多,我們還是用乙個簡單的例項說明一下linq帶來的體驗。
第一步:建立dbml(database mark language。資料庫描述語言,是一種xml格式的文件,用來描述資料庫)檔案,以northwind資料庫為例,上述customers類被對映成乙個表,對應資料庫中的 customers表
第二步:建立乙個asp.net頁面,在頁面上加入乙個gridview控制項
第三步:編寫**進行資料繫結
第四步:執行顯示結果。
linq是在ado.net之上的,那麼在將來它會代替ado.net嗎?
在大型專案中使用linq,它的效率如何呢?
接下來,我們開始從linq to sql語句入手,來全面了解一下linq,就從最簡單的where說起吧,這個在編寫程式中也最為常用。
本文摘自:
查詢表示式 LINQ 簡介
在上兩篇我介紹了c 3.0新語特性和改進,這些新特性在我們編寫程式時為我們提供了非常大的幫助。從這篇開始,我們開始一起來 linq。linq是language integrated query的簡稱,它是整合在.net程式語言中的一種特性。已成為程式語言的乙個組成部分,在編寫程式時可以得到很好的編譯...
查詢表示式 LINQ 簡介
在上兩篇我介紹了c 3.0新語特性和改進,這些新特性在我們編寫程式時為我們提供了非常大的幫助。從這篇開始,我們開始一起來 linq。linq是language integrated query的簡稱,它是整合在.net程式語言中的一種特性。已成為程式語言的乙個組成部分,在編寫程式時可以得到很好的編譯...
查詢表示式 LINQ 簡介
linq是language integrated query的簡稱,它是整合在.net程式語言中的一種特性。已成為程式語言的乙個組成部分,在編寫程式時可以得到很好的編譯時語法檢查,豐富的元資料,智慧型感知 靜態型別等強型別語言的好處。並且它同時還使得查詢可以方便地對記憶體中的資訊進行查詢而不僅僅只是...