共用方式為


如何:使用 LINQ 呼叫預存程式 (Visual Basic)

Language-Integrated 查詢 (LINQ) 可讓您輕鬆存取資料庫資訊,包括預存程式等資料庫物件。

下列範例示範如何建立在 SQL Server 資料庫中呼叫預存程式的應用程式。 此範例示範如何在資料庫中呼叫兩個不同的預存程式。 每個程式都會傳回查詢的結果。 一個程式接受輸入參數,而另一個程式則不接受參數。

本文中的範例會使用 Northwind 範例資料庫。 若要取得資料庫,請參閱 下載範例資料庫

注意

您的電腦可能會在下列指示中顯示某些 Visual Studio 使用者介面元素的不同名稱或位置。 您擁有的 Visual Studio 版本,以及您所使用的設定會決定這些元素。 如需詳細資訊,請參閱 個人化 IDE

與資料庫建立連線

  1. 在 Visual Studio 中,單擊 [檢視] 功能表上的 [/[資料庫總管],以開啟 [/[資料庫總管]

  2. [伺服器總管]/ 中,以滑鼠右鍵按兩下 [資料連線],然後按兩下 [[新增連線]

  3. 指定 Northwind 範例資料庫的有效連線。

加入包含 LINQ to SQL 檔案的專案

  1. 在 Visual Studio 的 [檔案] 功能表上,指向[新增],然後點擊[專案]。 選取 Visual Basic Windows Forms 應用程式 作為項目類型。

  2. 在 [專案] 功能表上,按一下 [新增專案]。 選取 LINQ to SQL 類別 項目範本。

  3. 將檔案命名為 northwind.dbml。 點選 [新增]。 對象關係型設計工具 (O/R 設計工具) 已針對 northwind.dbml 檔案開啟。

將預存程序新增至 O/R 設計工具

  1. [伺服器總管]/[資料庫總管]中,展開與 Northwind 資料庫的連線。 展開 預存程式 資料夾。

    如果您已關閉 O/R 設計工具,您可以按兩下您稍早新增的 northwind.dbml 檔案來重新開啟它。

  2. 單擊 依年度銷售 預存程序,然後將其拖曳至設計視圖的右窗格。 單擊 [十款最昂貴的產品], 預存程式將其拖曳至設計工具的右窗格。

  3. 儲存變更並關閉設計工具。

  4. 儲存您的專案。

若要新增程式代碼以顯示預存程序的結果

  1. 從 [工具箱],將 DataGridView 控件拖曳至專案 Form1 的預設 Windows Form。

  2. 雙擊 Form1,將程式碼新增至其 Load 事件。

  3. 當您將預存程式新增至 O/R 設計工具時,設計工具會為專案新增 DataContext 物件。 此物件包含您必須存取這些程式的程式代碼。 專案的 DataContext 物件會根據 .dbml 檔案的名稱來命名。 針對此項目,DataContext 物件會命名為 northwindDataContext

    您可以在程式代碼中建立 DataContext 的實例,並呼叫 O/R 設計工具指定的預存程式方法。 若要系結至 DataGridView 物件,您可能需要在預存程序的結果上呼叫 ToList 方法,強制查詢立即執行。

    將下列程式碼新增至 Load 事件,以呼叫公開為數據內容方法的任一預存程序。

    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 以執行專案並檢視結果。

另請參閱