自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

LINQ to SQL語句描述

開發(fā) 后端
這里介紹LINQ to SQL語句,目的讓大家從語句的角度了解LINQ,LINQ包括LINQ to Objects、LINQ to DataSets、LINQ to SQL、LINQ to Entities、LINQ to XML。

在向大家詳細介紹LINQ to SQL語句之前,首先讓大家了解下Select操作形式,分別為簡單形式、匿名類型形式、帶條件形式。

這篇開始我們繼續(xù)說LINQ to SQL語句,目的讓大家從語句的角度了解LINQ,LINQ包括LINQ to Objects、LINQ to DataSets、LINQ to SQL、LINQ to Entities、LINQ to XML,但是相對來說LINQ to SQL在我們程序中使用最多,畢竟所有的數(shù)據(jù)都要在數(shù)據(jù)庫運行著各種操作。所以先來學習LINQ to SQL語句,其它的都差不多了,那么就從Select說起吧,這個在編寫程序中也最為常用。本篇詳細說明一下Select操作形式,分別為簡單形式、匿名類型形式、帶條件形式。

1.簡單形式:

  1. var q =  
  2. from c in db.Customers  
  3. select c.ContactName; 

注意:這個語句只是一個聲明或者一個描述,并沒有真正把數(shù)據(jù)取出來,只有當你需要該數(shù)據(jù)的時候,它才會執(zhí)行這個語句,這就是延遲加載 (deferred loading)。如果,在聲明的時候就返回的結(jié)果集是對象的集合。你可以使用ToList() 或ToArray()方法把查詢結(jié)果先進行保存,然后再對這個集合進行查詢。當然延遲加載(deferred loading)可以像拼接SQL語句那樣拼接查詢語法,再執(zhí)行它。

2.匿名類型形式:

說明:匿名類型是C#3.0中新特性。其實質(zhì)是編譯器根據(jù)我們自定義自動產(chǎn)生一個匿名的類來幫助我們實現(xiàn)臨時變量的儲存。匿名類型還依賴于另外一個特性:支持根據(jù)property來創(chuàng)建對象。比如,var d = new { Name = "s" };編譯器自動產(chǎn)生一個有property叫做Name的匿名類,然后按這個類型分配內(nèi)存,并初始化對象。但是var d = new {"s"};是編譯不通過的。因為,編譯器不知道匿名類中的property的名字。例如string c = "d";var d = new { c}; 則是可以通過編譯的。編譯器會創(chuàng)建一個叫做匿名類帶有叫c的property。
例如下例:new{c,ContactName,c.Phone};ContactName和Phone都是在映射文件中定義與表中字段相對應的 property。編譯器讀取數(shù)據(jù)并創(chuàng)建對象時,會創(chuàng)建一個匿名類,這個類有兩個屬性,為ContactName和Phone,然后根據(jù)數(shù)據(jù)初始化對象。另外編譯器還可以重命名property的名字。

  1. var q =  
  2. from c in db.Customers  
  3. select new {c.ContactName, c.Phone}; 

語句描述:查詢顧客的聯(lián)系人和電話。

  1. var q =  
  2. from e in db.Employees  
  3. select new  
  4. {  
  5. Name = e.FirstName + " " + e.LastName,  
  6. Phone = e.HomePhone  
  7. }; 

語句描述:查詢職員的姓名和家庭電話

  1. var q =  
  2. from p in db.Products  
  3. select new  
  4. {  
  5. p.ProductID,  
  6. HalfPrice = p.UnitPrice / 2  
  7. }; 

3.帶條件形式:

說明:生成SQL語句為:case when condition then else。

  1. var q =  
  2. from p in db.Products  
  3. select new  
  4. {  
  5. p.ProductName,  
  6. Availability =  
  7. p.UnitsInStock - p.UnitsOnOrder < 0 ?   
  8. "Out Of Stock" : "In Stock"  
  9. }; 

以上介紹LINQ to SQL語句

【編輯推薦】

  1. LINQ Expression tree分析
  2. Linq調(diào)用數(shù)據(jù)訪問服務(wù)
  3. Linq實體繼承簡單描述
  4. Linq DataContext淺談
  5. Linq DataLoadOptions描述
責任編輯:佚名 來源: IT168
相關(guān)推薦

2009-09-16 09:38:27

LINQ To SQL

2009-09-15 11:14:33

LINQ to SQL

2009-09-17 17:14:54

linq to sql

2009-09-09 18:03:47

LINQ to SQL

2009-09-10 18:02:23

LINQ to SQL

2009-09-15 13:14:01

LINQ to SQL

2009-09-07 16:25:14

Linq To SQL

2009-09-15 10:02:44

Linq to SQL

2010-11-04 09:43:46

LINQ to SQL

2009-09-09 15:37:27

Linq DataLo

2009-09-16 17:44:54

LINQ to SQL

2010-07-20 13:52:27

SQL Server

2009-09-14 15:43:12

Linq Settin

2009-09-10 15:26:03

Linq City集合

2009-09-14 10:57:46

LINQ入門

2009-09-09 15:28:43

Linq to obj

2009-09-15 16:26:36

Linq orderb

2009-09-18 16:00:07

LINQ架構(gòu)

2009-09-11 10:20:36

Linq擴展方法

2009-09-08 09:24:50

LINQ查詢
點贊
收藏

51CTO技術(shù)棧公眾號