這篇文章給大家分享的是有關(guān)LINQ如何查詢數(shù)據(jù)庫的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
石門網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),石門網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為石門上千多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的石門做網(wǎng)站的公司定做!
您可以通過LINQ來編寫針對各種數(shù)據(jù)源的查詢訪問信息。您不必在使用SQL語法,因為LINQ提供了c#語言來處理,并提供了相同的類型及表達(dá)的功能。這是很重要的因為像一個 LINQ 提供了一個聲明性方法允許您編寫更面向?qū)ο蟮某绦颉?/p>
可以使用 LINQ編寫C# 代碼,列出使用 LINQ查詢數(shù)據(jù)庫,并創(chuàng)建 XML 文檔:
var contacts //從數(shù)據(jù)庫檢索客戶表 from customer in db.Customers where customer.Name.StartsWith("A") && customer.Orders.Count > 0 orderby customer.Name select new { customer.Name, customer.Phone }; var xml //從客戶列表生成 XML 數(shù)據(jù) new XElement("contacts", from contact in contacts select new XElement("contact", new XAttribute("name", contact.Name), new XAttribute("phone", contact.Phone) ) );
這段代碼含義是從數(shù)據(jù)庫中提取數(shù)據(jù)并從中創(chuàng)建一個 XML 文檔寫入所需內(nèi)容。使用LINQ您會感覺到更容易、更自然。您將很快看到更多 LINQ 查詢,但目前集中在語言方面。與from, where, orderby,和select 關(guān)鍵字在表里,很明顯他們已經(jīng)擴(kuò)展進(jìn)c#的LINQ工具里。
我們剛才所展示的是 C# 代碼,但 LINQ 跨編程語言提供常見查詢體系結(jié)構(gòu)。他工作在 C# 3.0 and VB.NET 9.0 (即 VB 2008),因此需要專用的編譯器,但是,可以其移植到其他.NET 語言。從目前來看F#已經(jīng)有了LINQ功能,未來會有更多.NET語言得到LINQ的支持。
圖中的查詢使用的是在 C#語法而不是在新的語言。LINQ并不是一種新的語言。它被集成到 C# 和 VB.NET。 此外,LINQ 可以用于避免.NET 編程語言與 SQL、 XSL 或其他特定于數(shù)據(jù)的語言想混淆。 LINQ 使查詢通過多種類型的數(shù)據(jù)存儲到編程語言的語言特定擴(kuò)展集中。您可以把linq視為通用遠(yuǎn)程控制。有時,您 會使用它來查詢數(shù)據(jù)庫 ;在其他方面,您也可以查詢 XML 文檔。您只需使用您喜歡的編程語言不必切換到SQL 或 XQuery 等查詢語言。
我們只給您提供簡略講了LINQ查詢數(shù)據(jù)庫。此時***的問題是:為什么我們希望使用 LINQ 之類的工具?為什么不使用以前其它的工具呢?LINQ創(chuàng)建在程序語法里,也同存在于關(guān)系數(shù)據(jù)庫和XML文檔里。
LINQ 來源于項目是一個簡單的事實:在應(yīng)用程序中用來驅(qū)動和與數(shù)據(jù)庫進(jìn)行連接。因此應(yīng)用程序中只懂一門c#語言是不能滿族需求的,你還要學(xué)習(xí)另一些語言,例如SQL語法,配合連同 C# 以形成完整應(yīng)用程序的 API。
我們將首先來看一段使用標(biāo)準(zhǔn)的.NET API 的數(shù)據(jù)訪問代碼。我們會指出,在這種代碼中遇到的常見問題。然后,我們將通過顯示如何這些存在問題與其他類型的數(shù)據(jù)如 XML。你將看到LINQ 地址之間數(shù)據(jù)源的一般不匹配和編程語言擴(kuò)展我們的分析。
感謝各位的閱讀!關(guān)于“LINQ如何查詢數(shù)據(jù)庫”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!