數(shù)據(jù)庫中LINQ執(zhí)行存儲過程的調(diào)用
怎樣調(diào)用 SQL Server 數(shù)據(jù)庫中LINQ執(zhí)行存儲過程。本文為大家介紹如何調(diào)用數(shù)據(jù)庫中的兩個不同的LINQ執(zhí)行存儲過程。每個LINQ執(zhí)行存儲過程都返回查詢結(jié)果。一個過程采用輸入?yún)?shù),另一個過程不采用參數(shù)。
本主題中的示例使用 Northwind 示例數(shù)據(jù)庫。如果沒有在開發(fā)計算機中安裝 Northwind 示例數(shù)據(jù)庫,可以從 Microsoft Download Center(Microsoft 下載中心)網(wǎng)站下載該數(shù)據(jù)庫。有關(guān)說明,請參見 下載示例數(shù)據(jù)庫 (LINQ to SQL)。
說明:
對于在以下說明中使用的某些 Visual Studio 用戶界面元素,您的計算機可能會顯示不同的名稱或位置。這些元素取決于您使用的 Visual Studio 版本及設(shè)置。有關(guān)更多信息,請參見 Visual Studio 設(shè)置。
創(chuàng)建與數(shù)據(jù)庫的連接
1.在 Visual Studio 中,通過在“視圖”菜單上單擊“服務(wù)器資源管理器”/“數(shù)據(jù)庫資源管理器”,打開“服務(wù)器資源管理器”/“數(shù)據(jù)庫資源管理器”。
2.在“服務(wù)器資源管理器”/“數(shù)據(jù)庫資源管理器”中,右擊“數(shù)據(jù)連接”,然后單擊“添加連接”。
3.指定與 Northwind 示例數(shù)據(jù)庫的有效連接。
添加包含 LINQ to SQL 文件的項目
1.在 Visual Studio 中的“文件”菜單上,指向“新建”,然后單擊“項目”。選擇 Visual Basic“Windows 窗體應(yīng)用程序”作為項目類型。
2.在“項目”菜單上單擊“添加新項”。選擇“LINQ to SQL 類”項模板。
3.將文件命名為 northwind.dbml。單擊“添加”。為 northwind.dbml 文件打開對象關(guān)系設(shè)計器(O/R 設(shè)計器)。
將存儲過程添加到 O/R 設(shè)計器上
1.在“服務(wù)器資源管理器”/“數(shù)據(jù)庫資源管理器”中,展開與 Northwind 數(shù)據(jù)庫的連接。展開“存儲過程”文件夾。如果已經(jīng)關(guān)閉 O/R 設(shè)計器,可以通過雙擊先前添加的 northwind.dbml 文件重新將其打開。
2.單擊“Sales by Year”存儲過程并將它拖到設(shè)計器的右窗格中。單擊“Ten Most Expensive Products”存儲過程并將它拖到設(shè)計器的右窗格中。
3.保存所做的更改并關(guān)閉設(shè)計器。
4.保存您的項目。
添加用于顯示存儲過程結(jié)果的代碼
1.從“工具箱”中,將 DataGridView 控件拖到項目的默認 Windows 窗體 Form1 上。
2.雙擊 Form1,向其 Load 事件添加代碼。
3.將存儲過程添加到 O/R 設(shè)計器后,設(shè)計器會為項目添加一個 DataContext 對象。此對象包含訪問這些過程所必需的代碼。項目的 DataContext 對象是根據(jù) .dbml 文件的名稱命名的。對于此項目, DataContext 對象被命名為 northwindDataContext。
可以在代碼中創(chuàng)建 DataContext 的實例并調(diào)用 O/R 設(shè)計器指定的存儲過程方法。若要綁定到 DataGridView 對象,必須強制查詢通過對存儲過程的結(jié)果調(diào)用 ToList<(Of <(TSource>)>) 方法立即執(zhí)行。
將下面的代碼添加到 Load 事件,以調(diào)用任一公開為數(shù)據(jù)上下文的方法的存儲過程。
- Visual Basic 復(fù)制代碼
- Dim db As New northwindDataContext
- ' Display the results of the Sales_by_Year stored procedure.
- DataGridView1.DataSource = _
- db.Sales_by_Year(#1/1/1996#, #1/1/2007#).ToList()
- ...
- ' Display the results of the Ten_Most_Expensive_Products
- ' stored procedure.
- DataGridView1.DataSource = _
- db.Ten_Most_Expensive_Products.ToList()
4.按 F5 運行項目并查看結(jié)果。
本文來自:Visual Basic 開發(fā)中心 作者:佚名
【編輯推薦】