Поделиться через


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
Атрибуты

Примеры

Первая процедура в этом примере извлекает DataTableCollectionDataSet объект и выводит значение каждого столбца в каждой строке каждой таблицы. Вторая процедура создает новый 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 все DataTable объекты для конкретного DataSetобъекта . Чтобы получить доступ к DataTableCollection объекту DataSet, используйте Tables свойство .

Использует DataTableCollection такие методы, как Add, Clearи Remove , для управления элементами в коллекции.

Используйте метод , Contains чтобы определить, находится ли определенная таблица (указанная индексом или именем) в коллекции.

Для перехода из одной таблицы в другую используйте ChildRelations свойство или ParentRelations объекта для DataTable доступа к коллекции DataRelation объектов . Свойство также можно использовать для навигации Relations по отношениям "родитель-потомок" DataTables в определенной DataSet коллекции.

Свойства

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)

Представляет коллекцию таблиц для DataSet.

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.

Применяется к

Потокобезопасность

Этот тип безопасен для многопоточных операций чтения. Необходимо синхронизировать все операции записи.

См. также раздел