ADO.NET 資料集

DataSet 物件對於支援 ADO.NET 的中斷連接、分散式的資料案例非常重要。 DataSet 是常駐記憶體的資料表示,可提供與資料來源無關的一致性關聯式程式設計模型。 它可與多個不同的資料來源一起使用、與 XML 資料一起使用,或管理應用程式的本機資料。 DataSet 表示一組完整的資料,包括相關資料表、條件約束及資料表間的關聯性。 下圖顯示 DataSet 物件模型。

ADO.Net graphic
DataSet 物件模型

DataSet 中的方法及物件與關聯式資料庫模型中的方法及物件一致。

DataSet 還能以 XML 保存及重新載入其內容,以 XML 結構描述定義語言 (XSD) 結構描述保存及重新載入其結構描述。 如需詳細資訊,請參閱在 DataSet 中使用 XML

DataTableCollection

ADO.NET DataSet 包含由 DataTable 物件所表示的零或多個資料表的集合。 DataTableCollection 包含 DataSet 中的所有 DataTable 物件。

DataTableSystem.Data 命名空間中定義,表示記憶體常駐資料的單一資料表。 它包含由 DataColumnCollection 所表示的資料行集合,以及由 ConstraintCollection 所表示的條件約束,它們共同定義資料表的結構描述。 DataTable 還包含由 DataRowCollection 所表示的資料列集合,它包含資料表中的資料。 連同其目前狀態一起,DataRow 還保留其目前及原始版本,以識別儲存在資料列中之值的變更。

DataView 類別

DataView 允許您為儲存在 DataTable 內的資料建立不同的檢視,這是資料繫結應用程式中常用的功能。 您可以使用 DataView,以不同排序次序公開 (Expose) 資料表中的資料,而且可以按照資料列狀態或根據篩選條件運算式來篩選資料。 如需詳細資訊,請參閱 DataViews

DataRelationCollection

DataSet 在其 DataRelationCollection 物件中包含關聯性。 由 DataRelation 物件所表示的關聯性,會將一個 DataTable 中的資料列與其他 DataTable 中的資料列相關聯。 關聯性類似於在關聯式資料庫中,主索引鍵資料行與外部索引鍵資料行之間存在的聯結路徑。 DataRelation 可識別 DataSet 之兩個資料表中相符的資料行。

關聯性 (Relationship) 可用於在 DataSet 內從一個資料表瀏覽到另一個資料表。 DataRelation 的基本元素是關聯性的名稱、相關資料表的名稱,以及每個資料表中相關的資料行。 藉由將 DataColumn 物件的陣列指定為索引鍵資料行,可在每個資料表中建立多個資料行的關聯性。 對 DataRelationCollection 新增關聯性時,您可以選擇性地新增 UniqueKeyConstraintForeignKeyConstraint,以在變更相關資料行值時,完整性條件約束。

如需詳細資訊,請參閱新增 DataRelations

XML

您可以從 XML 資料流或文件填滿 DataSet。 您可以使用 XML 資料流或文件,為 DataSet 提供資料、結構描述資訊或同時提供這兩者。 由 XML 資料流或文件提供的資訊,可與 DataSet 中的現有資料或結構描述資訊結合。 如需詳細資訊,請參閱在 DataSet 中使用 XML

ExtendedProperties

DataSetDataTableDataColumn 都具有 ExtendedProperties 屬性。 ExtendedPropertiesPropertyCollection,您可以在其中放置自訂資訊,如用於產生結果集的 SELECT 陳述式,或產生資料的時間。 ExtendedProperties 集合與 DataSet 的結構描述資訊保存在一起。

LINQ to DataSet

LINQ to DataSet 可為儲存在 DataSet 的中斷連接資料提供 Language-integrated Query (LINQ) 功能。 LINQ to DataSet 使用標準的 LINQ 語法,且在您使用 Visual Studio IDE 時提供編譯時間語法檢查、靜態型別和 IntelliSense 支援。

如需詳細資訊,請參閱 LINQ to DataSet

另請參閱