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

Linq to SQL訪問數(shù)據(jù)庫描述

開發(fā) 后端
這里介紹Linq to SQL訪問數(shù)據(jù)庫,我們首先新建一個(gè)工程。為了簡(jiǎn)單起見,我們就直接建立一個(gè)C# Console Application測(cè)試我們的ORM吧。將這個(gè)工程命名為L(zhǎng)inqToSqlDemo.Test。

在向大家詳細(xì)介紹Linq之前,首先讓大家了解下使用Linq to SQL訪問數(shù)據(jù)庫,包括介紹建立一個(gè)C# Console Application測(cè)試我們的ORM。

使用Linq to SQL訪問數(shù)據(jù)庫

我們首先新建一個(gè)工程。為了簡(jiǎn)單起見,我們就直接建立一個(gè)C# Console Application測(cè)試我們的ORM吧。將這個(gè)工程命名為L(zhǎng)inqToSqlDemo.Test。當(dāng)然,建好工程后,不要忘了添加對(duì)工程LinqToSqlDemo.Orm的引用,還要添加對(duì)“System.Data.Linq”命名空間的引用。

然后,我們打開Program.cs文件,將其中的內(nèi)容替換為如下測(cè)試代碼。

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Data.Linq;  
  4. using System.Linq;  
  5. using System.Text;  
  6.  
  7. using LinqToSqlDemo.Orm;  
  8.  
  9. namespace LinqToSqlDemo.Test  
  10. {  
  11. class Program  
  12. {  
  13. private static DataClassesDataContext 
    dataContext = new DataClassesDataContext();  
  14.  
  15. private static void Output()  
  16. {  
  17. //輸出分類信息  
  18. foreach (Category c in dataContext.Categories)  
  19. {  
  20. Console.WriteLine("分類" + c.ID + ":" + c.Name);  
  21. }  
  22.  
  23. //輸出體育新聞下的公告信息  
  24. Category categorySport = dataContext.Categories.Single(c => c.Name == "體育新聞");  
  25. foreach (Bulletin b in categorySport.Bulletins)  
  26. {  
  27. Console.WriteLine("標(biāo)題:" + b.Title);  
  28. Console.WriteLine("內(nèi)容:" + b.Content);  
  29. Console.WriteLine("發(fā)布日期:" + b.Date);  
  30. Console.WriteLine("所屬分類:" + b.Category1.Name);  
  31. }  
  32. }  
  33.  
  34. private static void TestInsert()  
  35. {  
  36. //生成分類實(shí)體類  
  37. Category category1 = new Category()  
  38. {  
  39. Name = "國(guó)際要聞" 
  40. };  
  41. Category category2 = new Category()  
  42. {  
  43. Name = "體育新聞" 
  44. };  
  45. Category category3 = new Category()  
  46. {  
  47. Name = "財(cái)經(jīng)快報(bào)" 
  48. };  
  49.  
  50. //生成公告實(shí)體類  
  51. Bulletin bulletin1 = new Bulletin()  
  52. {  
  53. Content = "曼聯(lián)晉級(jí)冠軍杯四強(qiáng)",  
  54. Date = DateTime.Now,  
  55. Title = "曼聯(lián)晉級(jí)冠軍杯四強(qiáng)" 
  56. };  
  57. Bulletin bulletin2 = new Bulletin()  
  58. {  
  59. Content = "18:00直播亞冠首爾VS山東,敬請(qǐng)期待?。?!",  
  60. Date = DateTime.Now,  
  61. Title = "18:00直播亞冠首爾VS山東" 
  62. };  
  63.  
  64. //將公告加入相應(yīng)分類  
  65. category2.Bulletins.Add(bulletin1);  
  66. category2.Bulletins.Add(bulletin2);  
  67.  
  68. //加入數(shù)據(jù)庫  
  69. dataContext.Categories.InsertOnSubmit(category1);  
  70. dataContext.Categories.InsertOnSubmit(category2);  
  71. dataContext.Categories.InsertOnSubmit(category3);  
  72. dataContext.SubmitChanges();  
  73. }  
  74.  
  75. private static void TestDelete()  
  76. {  
  77. dataContext.Categories.DeleteOnSubmit
    (dataContext.Categories.Single(
    c => c.Name == "國(guó)際要聞"));  
  78. dataContext.SubmitChanges();  
  79. }  
  80.  
  81. private static void TestUpdate()  
  82. {  
  83. Category categoryFinance = dataContext.
    Categories.Single(
    c => c.Name == "財(cái)經(jīng)快報(bào)");  
  84. categoryFinance.Name = "財(cái)經(jīng)新聞";  
  85. dataContext.SubmitChanges();  
  86. }  
  87.  
  88. static void Main(string[] args)  
  89. {  
  90. Console.WriteLine("===Linq to SQL 測(cè)試===");  
  91. Console.WriteLine();  
  92.  
  93. Console.WriteLine("===測(cè)試Insert===");  
  94. Console.WriteLine();  
  95. TestInsert();  
  96. Output();  
  97.  
  98. Console.WriteLine("===測(cè)試Delete===");  
  99. Console.WriteLine();  
  100. TestDelete();  
  101. Output();  
  102.  
  103. Console.WriteLine("===測(cè)試Update===");  
  104. Console.WriteLine();  
  105. TestUpdate();  
  106. Output();  
  107.  
  108. Console.ReadLine();  
  109. }  
  110. }  
  111. }  

我們先來看看這段測(cè)試程序做了什么事。剛開始,數(shù)據(jù)庫是空的,我們首先插入三個(gè)分類,并在“體育新聞”下插入兩條公告,這是對(duì)Insert的測(cè)試。接著,我們刪除了“國(guó)際要聞”分類,這是對(duì)Delete的測(cè)試。然后,我們將“財(cái)經(jīng)快報(bào)”改為“財(cái)經(jīng)新聞”,這是對(duì)Update測(cè)試。另外,整個(gè)過程的輸出當(dāng)然是對(duì)Select的測(cè)試。這樣,數(shù)據(jù)庫基本的操作都測(cè)試過了。從輸 出結(jié)果來看,我們的ORM組件運(yùn)行很順利,程序輸出正確。以上介紹使用Linq to SQL訪問數(shù)據(jù)庫。

【編輯推薦】

  1. Linq匿名委托類型
  2. Linq異常處理詳細(xì)介紹
  3. Linq Setting字段描述
  4. Linq數(shù)據(jù)和對(duì)象淺談
  5. Linq內(nèi)部執(zhí)行原理剖析
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-09-09 13:07:37

創(chuàng)建Linq數(shù)據(jù)庫

2009-12-02 10:33:34

LINQ to SQL

2009-09-18 15:19:19

LINQ to SQL

2009-09-18 14:25:36

LINQ to SQL

2009-09-10 10:37:15

LINQ to SQL

2009-09-16 09:38:27

LINQ To SQL

2010-04-14 15:45:49

Oracle 數(shù)據(jù)庫

2010-06-30 11:16:50

SQL Server

2009-09-17 17:14:54

linq to sql

2009-09-15 11:14:33

LINQ to SQL

2010-04-09 10:32:03

Oracle 數(shù)據(jù)庫

2009-09-15 13:14:01

LINQ to SQL

2009-05-14 14:23:25

微軟ado.netLINQ

2009-04-02 10:37:52

通用基類SQLLINQ

2009-09-16 10:58:13

Linq數(shù)據(jù)分組

2010-07-05 13:29:56

2009-09-18 13:58:00

LINQ查詢數(shù)據(jù)庫

2009-09-14 15:37:06

LINQ映射數(shù)據(jù)庫

2009-09-09 15:37:27

Linq DataLo

2010-07-05 13:36:21

SQL Server
點(diǎn)贊
收藏

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