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

LINQ DataContext類(lèi)詳細(xì)介紹

開(kāi)發(fā) 后端
這里介紹LINQ DataContext類(lèi),DataContext 是用來(lái)連接到數(shù)據(jù)庫(kù)、從中檢索對(duì)象以及將更改提交回?cái)?shù)據(jù)庫(kù)的主要渠道。使用 DataContext 時(shí)就像使用 ADO.NET SqlConnection 一樣。

學(xué)習(xí)LINQ時(shí),經(jīng)常會(huì)遇到LINQ DataContext類(lèi)問(wèn)題,這里將介紹LINQ DataContext類(lèi)問(wèn)題的解決方法。

LINQ DataContext類(lèi)

表示 LINQ to SQL 框架的主入口點(diǎn)。

DataContext 是輕量的,創(chuàng)建它不需要很大的開(kāi)銷(xiāo)。典型的 LINQ to SQL 應(yīng)用程序在方法范圍內(nèi)創(chuàng)建 DataContext 實(shí)例,或?qū)⑦@些實(shí)例創(chuàng)建為生存期較短的類(lèi)(這些類(lèi)表示相關(guān)數(shù)據(jù)庫(kù)操作的邏輯集合)的成員。

DataContext 是用來(lái)連接到數(shù)據(jù)庫(kù)、從中檢索對(duì)象以及將更改提交回?cái)?shù)據(jù)庫(kù)的主要渠道。使用 DataContext 時(shí)就像使用 ADO.NET SqlConnection 一樣。事實(shí)上,DataContext 是用您提供的連接或連接字符串初始化的。

DataContext 的用途是將您對(duì)對(duì)象的請(qǐng)求轉(zhuǎn)換成要對(duì)數(shù)據(jù)庫(kù)執(zhí)行的 SQL 查詢(xún),然后將查詢(xún)結(jié)果匯編成對(duì)象。DataContext 通過(guò)實(shí)現(xiàn)與標(biāo)準(zhǔn)查詢(xún)運(yùn)算符(如 Where 和 Select)相同的運(yùn)算符模式來(lái)實(shí)現(xiàn) 語(yǔ)言集成查詢(xún) (LINQ)。

  1. //實(shí)體類(lèi)  
  2. [Table(Name = "Student")]  
  3. public class Student  
  4. {  
  5. [Column(IsPrimaryKey = true)]  
  6. public int ID;  
  7. [Column]  
  8. public string StuName;  
  9. [Column]  
  10. public bool Sex;  
  11.  
  12. [Column]  
  13. public int Age;  
  14. }  
  15. //強(qiáng)類(lèi)型DataContext  
  16. public class TestDB : DataContext  
  17. {  
  18. public TestDB(string constr)  
  19. : base(constr){   
  20. }  
  21. public Table Student;  
  22. public Table Scores;  
  23. }  
  24. //調(diào)用  
  25. TestDB Test = new TestDB(constr);  
  26. var stu = from student in Test.Student  
  27. select student;  
  28. foreach (var st in stu)  
  29. {  
  30. Console.WriteLine("編號(hào):{0},性名:{1},年齡:{2},性別:{3}",
    st.ID ,st.StuName ,st.Sex ,st.Age);  

每個(gè)數(shù)據(jù)庫(kù)表表示為一個(gè)可借助 GetTable 方法(通過(guò)使用實(shí)體類(lèi)來(lái)標(biāo)識(shí)它)使用的 Table 集合。

***的做法是聲明一個(gè)強(qiáng)類(lèi)型化的 DataContext,而不是依靠基本LINQ DataContext類(lèi)和 GetTable 方法。強(qiáng)類(lèi)型化的 DataContext 將所有 Table 集合聲明為上下文的成員,如下例中所示。

強(qiáng)類(lèi)型DataContext添加

  1. //實(shí)體類(lèi)  
  2. [Table(Name = "Student")]  
  3. public class Student  
  4. {  
  5. [Column(IsPrimaryKey = true)]  
  6. public int ID;  
  7. [Column]  
  8. public string StuName;  
  9. [Column]  
  10. public bool Sex;  
  11. [Column]  
  12. public int Age;  
  13. }  
  14. //強(qiáng)類(lèi)型DataContext  
  15. public class TestDB : DataContext  
  16. {  
  17. public TestDB(string constr)  
  18. : base(constr)  
  19. { }  
  20. public Table Student;  
  21. public Table Scores;  
  22. }  
  23. ///添加  
  24. TestDB Test = new TestDB(constr);  
  25. Student student = new Student();  
  26. student.StuName = "大張";  
  27. student.Sex = false;  
  28. student .Age =34;  
  29. Test.Student.InsertOnSubmit(student);  
  30. Test.SubmitChanges(); 

【編輯推薦】

  1. LINQ to SQL查詢(xún)分析
  2. LINQ查詢(xún)架構(gòu)簡(jiǎn)單介紹
  3. LINQ to SQL映射關(guān)系概述
  4. LINQ To SQL對(duì)象模型淺析
  5. LINQ to SQL映射列描述
責(zé)任編輯:佚名 來(lái)源: IT168
相關(guān)推薦

2009-09-09 15:44:22

Linq DataCo

2009-09-08 14:56:55

強(qiáng)類(lèi)型DataContLinq to SQL

2009-09-18 09:25:06

LINQ Framew

2009-09-08 13:07:15

介紹Linq to S

2009-09-14 14:17:11

Linq異常處理

2009-09-18 15:22:14

DataContextLINQ to SQL

2009-09-17 10:40:22

Linq Lambda

2009-09-14 16:21:34

LINQ To XML

2009-09-14 15:15:45

LINQ技術(shù)

2011-07-12 10:24:17

類(lèi)加載反射

2009-09-15 13:59:18

LINQ to Dat

2009-09-14 14:20:36

LINQ ORM

2009-09-09 14:20:49

LINQ To Luc

2012-08-24 09:24:06

線(xiàn)程DbContext

2009-09-08 10:50:20

2009-09-10 17:30:15

LINQ Where子

2009-09-11 09:41:19

LINQ to SQL

2009-09-16 10:38:43

LINQ查詢(xún)

2009-08-13 11:01:32

LINQPadLINQ工具

2009-09-14 13:14:49

LINQ序列
點(diǎn)贊
收藏

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