DataTableCollection 類別

定義

表示 DataSet 的資料表集合。

public ref class DataTableCollection sealed : System::Data::InternalDataCollectionBase
public ref class DataTableCollection : System::Data::InternalDataCollectionBase
[System.ComponentModel.ListBindable(false)]
public sealed class DataTableCollection : System.Data.InternalDataCollectionBase
[System.ComponentModel.ListBindable(false)]
[System.Serializable]
public class DataTableCollection : System.Data.InternalDataCollectionBase
[<System.ComponentModel.ListBindable(false)>]
type DataTableCollection = class
    inherit InternalDataCollectionBase
[<System.ComponentModel.ListBindable(false)>]
[<System.Serializable>]
type DataTableCollection = class
    inherit InternalDataCollectionBase
Public NotInheritable Class DataTableCollection
Inherits InternalDataCollectionBase
Public Class DataTableCollection
Inherits InternalDataCollectionBase
繼承
DataTableCollection
屬性

範例

此範例中的第一個程式會 DataTableCollection 擷取 的 DataSet ,並列印每個資料表中每個資料行的值。 第二個程式會使用兩個數據行建立新的 DataTable ,並將它新增至 DataTableCollection

private void GetTables(DataSet dataSet)
{
    // Get Each DataTable in the DataTableCollection and
    // print each row value.
    foreach (DataTable table in dataSet.Tables)
        foreach (DataRow row in table.Rows)
            foreach (DataColumn column in table.Columns)
                if (row[column] != null)
                    Console.WriteLine(row[column]);
}

private void CreateTable(DataSet dataSet)
{
    DataTable newTable = new DataTable("table");
    newTable.Columns.Add("ID", typeof(int));
    newTable.Columns.Add("Name", typeof(string));
    dataSet.Tables.Add(newTable);
}
Private Sub GetTables(dataSet As DataSet)
   ' Get Each DataTable in the DataTableCollection and 
   ' print each row value.
   Dim table As DataTable
   Dim row As DataRow
   Dim column As DataColumn
   For Each table In dataSet.Tables
      For Each row In table.Rows
         For Each column in table.Columns
            If Not (row(column) Is Nothing) Then
               Console.WriteLine(row(column))
            End If
         Next
      Next
   Next
End Sub

Private Sub CreateTable(dataSet As DataSet)
   Dim newTable As New DataTable("table")
   newTable.Columns.Add("ID", Type.GetType("System.Int32"))
   newTable.Columns.Add("Name", Type.GetType("System.String"))
   dataSet.Tables.Add(newTable)
End Sub

備註

DataTableCollection包含特定 DataSet 的所有 DataTable 物件。 若要存取 DataTableCollectionDataSet ,請使用 Tables 屬性。

DataTableCollection 使用 、 ClearRemove 之類的 Add 方法來管理集合中的專案。

Contains使用 方法來判斷索引或名稱) 指定的特定資料表 (是否在集合中。

若要從一個資料表巡覽到另一個資料表,請使用 ChildRelationsDataTableParentRelations 屬性來存取其 物件的集合 DataRelation 。 您也可以使用 Relations 屬性來巡覽特定 DataSet 集合中 的 DataTables 父/子關聯性。

屬性

Count

取得集合中的項目總數。

(繼承來源 InternalDataCollectionBase)
IsReadOnly

取得值,這個值表示 InternalDataCollectionBase 是否為唯讀。

(繼承來源 InternalDataCollectionBase)
IsSynchronized

取得值,表示 InternalDataCollectionBase 是否同步處理。

(繼承來源 InternalDataCollectionBase)
Item[Int32]

取得在指定之索引處的 DataTable 物件。

Item[String, String]

取得指定命名空間中具有指定名稱的 DataTable 物件。

Item[String]

取得具有指定之名稱的 DataTable 物件。

List

取得集合的項目做為清單。

List

取得集合的項目做為清單。

(繼承來源 InternalDataCollectionBase)
SyncRoot

取得可以用來同步集合的物件。

(繼承來源 InternalDataCollectionBase)

方法

Add()

使用預設名稱建立新的 DataTable 物件,並將它加入至集合。

Add(DataTable)

將指定的 DataTable 加入至集合。

Add(String)

使用指定的名稱建立 DataTable 物件,並將它加入至集合。

Add(String, String)

使用指定的名稱建立 DataTable 物件,並將它加入至集合。

AddRange(DataTable[])

將指定的 DataTable 陣列元素複製到集合的末端。

CanRemove(DataTable)

驗證是否可以從集合移除指定的 DataTable 物件。

Clear()

清除所有 DataTable 物件的集合。

Contains(String)

取得值,指出集合中是否含有具此指定名稱的 DataTable 物件。

Contains(String, String)

取得指出具有所指定名稱和資料表命名空間的 DataTable 物件是否存在於集合中的值。

CopyTo(Array, Int32)

複製目前 InternalDataCollectionBase 的所有項目至一維 Array,開始於指定的 InternalDataCollectionBase 索引。

(繼承來源 InternalDataCollectionBase)
CopyTo(DataTable[], Int32)

複製目前 DataTableCollection 的所有項目至一維 Array,從指定的目的陣列索引開始。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetEnumerator()

取得集合的 IEnumerator

(繼承來源 InternalDataCollectionBase)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
IndexOf(DataTable)

取得指定 DataTable 物件的索引。

IndexOf(String)

取得在具有指定名稱之 DataTable 物件的集合中的索引。

IndexOf(String, String)

取得指定 DataTable 物件集合中的索引。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnCollectionChanged(CollectionChangeEventArgs)

引發 OnCollectionChanged(CollectionChangeEventArgs) 事件。

OnCollectionChanging(CollectionChangeEventArgs)
Remove(DataTable)

從集合中移除指定的 DataTable 物件。

Remove(String)

從集合中移除具有指定名稱的 DataTable 物件。

Remove(String, String)

從集合中移除具有指定名稱的 DataTable 物件。

RemoveAt(Int32)

從集合中移除位於指定索引位置的 DataTable 物件。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

事件

CollectionChanged

由於正在加入或移除 DataTableCollection 物件而導致 DataTable 變更時,就會發生此情況。

CollectionChanging

由於正在加入或移除 DataTableCollection 物件而導致 DataTable 變更時,就會發生此一情況。

擴充方法

Cast<TResult>(IEnumerable)

IEnumerable 的項目轉換成指定的型別。

OfType<TResult>(IEnumerable)

根據指定的型別來篩選 IEnumerable 的項目。

AsParallel(IEnumerable)

啟用查詢的平行化作業。

AsQueryable(IEnumerable)

IEnumerable 轉換成 IQueryable

適用於

執行緒安全性

此類型適用于多執行緒讀取作業。 您必須同步處理任何寫入作業。

另請參閱