Share via


使用 Visual Studio 在 .NET Framework 中建立及設定資料集

注意

資料集和相關類別是 2000 年代初的舊版 .NET Framework 技術,可讓應用程式在應用程式與資料庫中斷連線時使用記憶體中的資料。 它們特別適用於可讓使用者修改資料並將變更保存回資料庫的應用程式。 雖然已證明資料集是非常成功的技術,但建議新的 .NET 應用程式使用 Entity Framework Core。 Entity Framework 提供更自然的方式,將表格式資料作為物件模型使用,而且具有更簡單的程式設計介面。

資料集是一組物件,會將資料庫中的資料儲存在記憶體中,並支援變更追蹤,以在該資料上啟用建立、讀取、更新和刪除 (CRUD) 作業,而不需一律連接到資料庫。 資料集是為了簡單的資料業務應用程式而設計的。 針對新的應用程式,請考慮使用 Entity Framework 在記憶體中儲存和建模資料。 若要使用資料集,您應該具備資料庫概念的基本知識。

您可以在設計階段使用 [資料來源組態精靈]在 Visual Studio 中建立具有 DataSet 類型的類別。 如需以程式設計方式建立資料集的資訊,請參閱建立資料集 (ADO.NET)

使用 [資料來源組態精靈],以建立新的資料集

  1. 在 Visual Studio 中開啟您的專案,然後選擇 [專案]>[新增資料來源] 以啟動 [資料來源設定精靈]

  2. 選擇您要連線的資料來源類型。

    螢幕擷取畫面,其中顯示了資料來源設定精靈。

  3. 從選項清單中選取 DataSet

    螢幕擷取畫面,其中顯示了選擇資料集作為資料庫模型。

  4. 選擇將成為資料集之資料來源的一或多個資料庫。

    顯示如何選擇連線的螢幕擷取畫面。

  5. 選擇是否要在 app.config 中儲存連接字串。

    螢幕擷取畫面顯示將連接字串儲存至應用程式組態檔的選項。

  6. 從資料庫中選擇要在資料集中表示的資料表 (或個別資料行)、預存程序、函式和檢視。

    螢幕擷取畫面,其中顯示了如何選擇資料庫物件。

  7. 按一下完成

    資料集會顯示為 [方案總管] 中的節點。

    螢幕擷取畫面,其中顯示了方案總管中的資料集。

  8. 按一下 [方案總管] 中的資料集節點,以在 資料集設計工具中開啟資料集。 資料集中的每個資料表都有相關聯的 TableAdapter 物件,該物件顯示在底部。 資料表介面卡可用來填入資料集,並選擇性地將命令傳送至資料庫。

    螢幕擷取畫面,其中顯示了 DataSet 設計工具中的資料表。

  9. 連接資料表的關聯線代表資料表關聯性,如資料庫中所定義的。 根據預設,資料庫中的外部索引鍵條件約束僅以關聯表示,而更新和刪除規則設定為無。 一般而言,這就是您想要的。 不過,您可以按一下這幾行來顯示 [關聯] 對話方塊,您可以在其中變更階層式更新的行為。 如需詳細資訊,請參閱資料集中的關聯性階層式更新

    資料集關聯對話方塊

  10. 按一下資料表、資料表介面卡或資料表中的資料行名稱,以在 [屬性] 視窗中查看其屬性。 您可以在此修改某些值。 請記住,您正在修改資料集,而不是來源資料庫。

    螢幕擷取畫面,其中顯示了資料集資料行屬性。

  11. 您可以將新的資料表或資料表介面卡新增至資料集,或新增現有資料表介面卡的新查詢,或從 [工具箱] 索引標籤拖曳這些專案來指定資料表之間的新關聯性。當 資料集設計工具處於焦點時,就會顯示此索引標籤。

    螢幕擷取畫面,其中顯示了資料集工具箱。

接下來,您可能想要指定如何使用資料填入資料集。 為此,您可以使用 TableAdapter 設定精靈。 如需詳細資訊,請參閱使用 TableAdapter 填滿資料集

將資料庫資料表或其他物件新增至現有的資料集

此程序顯示如何用於首次建立資料集的相同資料庫新增資料表。

  1. 按一下 [方案總管] 中的資料集節點,讓 資料集設計工具成為焦點。

  2. 按一下 Visual Studio 左邊界的 [資料來源] 索引標籤,或在搜尋方塊中輸入資料來源

  3. 以滑鼠右鍵按一下資料集節點,然後選取 [使用精靈設定資料來源]

    螢幕擷取畫面,其中顯示了資料來源特色選單。

  4. 使用精靈來指定要新增至資料集的其他資料表、預存程式或其他資料庫物件。

將獨立資料表新增至資料集中

  1. 在 [資料集設計工具] 中開啟資料集。

  2. DataTable 類別從 [工具箱] 的 [資料集] 索引標籤拖曳至 [資料集設計工具] 上。

  3. 新增資料行以定義資料表。 以滑鼠右鍵按一下資料表,然後選擇 [新增]>[資料行]。 視需要使用 [屬性] 視窗來設定資料行的資料類型和索引鍵。

獨立資料表需要實作 Fill 邏輯,以便您可以填入資料。 如需填滿資料表的資訊,請參閱從 DataAdapter 填入資料集