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


DataTable Класс

Определение

Представляет одну таблицу данных в памяти.

public ref class DataTable : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitialize, System::ComponentModel::ISupportInitializeNotification, System::Runtime::Serialization::ISerializable, System::Xml::Serialization::IXmlSerializable
public ref class DataTable
public ref class DataTable : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitialize, System::Runtime::Serialization::ISerializable
public ref class DataTable : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitializeNotification, System::Runtime::Serialization::ISerializable, System::Xml::Serialization::IXmlSerializable
public class DataTable : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitialize, System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
public class DataTable
[System.Serializable]
public class DataTable : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitialize, System.Runtime.Serialization.ISerializable
[System.Serializable]
public class DataTable : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
public class DataTable : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
type DataTable = class
    inherit MarshalByValueComponent
    interface IListSource
    interface ISupportInitialize
    interface ISupportInitializeNotification
    interface ISerializable
    interface IXmlSerializable
type DataTable = class
[<System.Serializable>]
type DataTable = class
    inherit MarshalByValueComponent
    interface IListSource
    interface ISupportInitialize
    interface ISerializable
[<System.Serializable>]
type DataTable = class
    inherit MarshalByValueComponent
    interface IListSource
    interface ISupportInitializeNotification
    interface ISupportInitialize
    interface ISerializable
    interface IXmlSerializable
Public Class DataTable
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitialize, ISupportInitializeNotification, IXmlSerializable
Public Class DataTable
Public Class DataTable
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitialize
Public Class DataTable
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitializeNotification, IXmlSerializable
Наследование
Наследование
DataTable
Производный
Атрибуты
Реализации

Примеры

В следующем примере создаются два DataTable объекта и один DataRelation объект и добавляются новые объекты в DataSet. Затем таблицы отображаются в элементе DataGridView управления .

// Put the next line into the Declarations section.
private System.Data.DataSet dataSet;

private void MakeDataTables()
{
    // Run all of the functions.
    MakeParentTable();
    MakeChildTable();
    MakeDataRelation();
    BindToDataGrid();
}

private void MakeParentTable()
{
    // Create a new DataTable.
    System.Data.DataTable table = new DataTable("ParentTable");
    // Declare variables for DataColumn and DataRow objects.
    DataColumn column;
    DataRow row;

    // Create new DataColumn, set DataType,
    // ColumnName and add to DataTable.
    column = new DataColumn();
    column.DataType = System.Type.GetType("System.Int32");
    column.ColumnName = "id";
    column.ReadOnly = true;
    column.Unique = true;
    // Add the Column to the DataColumnCollection.
    table.Columns.Add(column);

    // Create second column.
    column = new DataColumn();
    column.DataType = System.Type.GetType("System.String");
    column.ColumnName = "ParentItem";
    column.AutoIncrement = false;
    column.Caption = "ParentItem";
    column.ReadOnly = false;
    column.Unique = false;
    // Add the column to the table.
    table.Columns.Add(column);

    // Make the ID column the primary key column.
    DataColumn[] PrimaryKeyColumns = new DataColumn[1];
    PrimaryKeyColumns[0] = table.Columns["id"];
    table.PrimaryKey = PrimaryKeyColumns;

    // Instantiate the DataSet variable.
    dataSet = new DataSet();
    // Add the new DataTable to the DataSet.
    dataSet.Tables.Add(table);

    // Create three new DataRow objects and add
    // them to the DataTable
    for (int i = 0; i <= 2; i++)
    {
        row = table.NewRow();
        row["id"] = i;
        row["ParentItem"] = "ParentItem " + i;
        table.Rows.Add(row);
    }
}

private void MakeChildTable()
{
    // Create a new DataTable.
    DataTable table = new DataTable("childTable");
    DataColumn column;
    DataRow row;

    // Create first column and add to the DataTable.
    column = new DataColumn();
    column.DataType = System.Type.GetType("System.Int32");
    column.ColumnName = "ChildID";
    column.AutoIncrement = true;
    column.Caption = "ID";
    column.ReadOnly = true;
    column.Unique = true;

    // Add the column to the DataColumnCollection.
    table.Columns.Add(column);

    // Create second column.
    column = new DataColumn();
    column.DataType = System.Type.GetType("System.String");
    column.ColumnName = "ChildItem";
    column.AutoIncrement = false;
    column.Caption = "ChildItem";
    column.ReadOnly = false;
    column.Unique = false;
    table.Columns.Add(column);

    // Create third column.
    column = new DataColumn();
    column.DataType = System.Type.GetType("System.Int32");
    column.ColumnName = "ParentID";
    column.AutoIncrement = false;
    column.Caption = "ParentID";
    column.ReadOnly = false;
    column.Unique = false;
    table.Columns.Add(column);

    dataSet.Tables.Add(table);

    // Create three sets of DataRow objects,
    // five rows each, and add to DataTable.
    for (int i = 0; i <= 4; i++)
    {
        row = table.NewRow();
        row["childID"] = i;
        row["ChildItem"] = "Item " + i;
        row["ParentID"] = 0;
        table.Rows.Add(row);
    }
    for (int i = 0; i <= 4; i++)
    {
        row = table.NewRow();
        row["childID"] = i + 5;
        row["ChildItem"] = "Item " + i;
        row["ParentID"] = 1;
        table.Rows.Add(row);
    }
    for (int i = 0; i <= 4; i++)
    {
        row = table.NewRow();
        row["childID"] = i + 10;
        row["ChildItem"] = "Item " + i;
        row["ParentID"] = 2;
        table.Rows.Add(row);
    }
}

private void MakeDataRelation()
{
    // DataRelation requires two DataColumn
    // (parent and child) and a name.
    DataColumn parentColumn =
        dataSet.Tables["ParentTable"].Columns["id"];
    DataColumn childColumn =
        dataSet.Tables["ChildTable"].Columns["ParentID"];
    DataRelation relation = new
        DataRelation("parent2Child", parentColumn, childColumn);
    dataSet.Tables["ChildTable"].ParentRelations.Add(relation);
}

private void BindToDataGrid()
{
    // Instruct the DataGrid to bind to the DataSet, with the
    // ParentTable as the topmost DataTable.
    DataGrid1.SetDataBinding(dataSet, "ParentTable");
}
' Put the next line into the Declarations section.
private dataSet As DataSet 
 
Private Sub MakeDataTables()
    ' Run all of the functions. 
    MakeParentTable()
    MakeChildTable()
    MakeDataRelation()
    BindToDataGrid()
End Sub
 
Private Sub MakeParentTable()
    ' Create a new DataTable.
    Dim table As New DataTable("ParentTable")

    ' Declare variables for DataColumn and DataRow objects.
    Dim column As DataColumn 
    Dim row As DataRow 
 
    ' Create new DataColumn, set DataType, ColumnName 
    ' and add to DataTable.    
    column = New DataColumn()
    column.DataType = System.Type.GetType("System.Int32")
    column.ColumnName = "id"
    column.ReadOnly = True
    column.Unique = True

    ' Add the Column to the DataColumnCollection.
    table.Columns.Add(column)
 
    ' Create second column.
    column = New DataColumn()
    column.DataType = System.Type.GetType("System.String")
    column.ColumnName = "ParentItem"
    column.AutoIncrement = False
    column.Caption = "ParentItem"
    column.ReadOnly = False
    column.Unique = False

    ' Add the column to the table.
    table.Columns.Add(column)
 
    ' Make the ID column the primary key column.
    Dim PrimaryKeyColumns(0) As DataColumn
    PrimaryKeyColumns(0)= table.Columns("id")
    table.PrimaryKey = PrimaryKeyColumns
 
    ' Instantiate the DataSet variable.
    dataSet = New DataSet()

    ' Add the new DataTable to the DataSet.
    dataSet.Tables.Add(table)
 
    ' Create three new DataRow objects and add 
    ' them to the DataTable
    Dim i As Integer
    For i = 0 to 2
       row = table.NewRow()
       row("id") = i
       row("ParentItem") = "ParentItem " + i.ToString()
       table.Rows.Add(row)
    Next i
End Sub
 
Private Sub MakeChildTable()
    ' Create a new DataTable.
    Dim table As New DataTable("childTable")
    Dim column As DataColumn 
    Dim row As DataRow 
 
    ' Create first column and add to the DataTable.
    column = New DataColumn()
    column.DataType= System.Type.GetType("System.Int32")
    column.ColumnName = "ChildID"
    column.AutoIncrement = True
    column.Caption = "ID"
    column.ReadOnly = True
    column.Unique = True

    ' Add the column to the DataColumnCollection.
    table.Columns.Add(column)
 
    ' Create second column.
    column = New DataColumn()
    column.DataType= System.Type.GetType("System.String")
    column.ColumnName = "ChildItem"
    column.AutoIncrement = False
    column.Caption = "ChildItem"
    column.ReadOnly = False
    column.Unique = False
    table.Columns.Add(column)
 
    ' Create third column.
    column = New DataColumn()
    column.DataType= System.Type.GetType("System.Int32")
    column.ColumnName = "ParentID"
    column.AutoIncrement = False
    column.Caption = "ParentID"
    column.ReadOnly = False
    column.Unique = False
    table.Columns.Add(column)
 
    dataSet.Tables.Add(table)

    ' Create three sets of DataRow objects, five rows each, 
    ' and add to DataTable.
    Dim i As Integer
    For i = 0 to 4
       row = table.NewRow()
       row("childID") = i
       row("ChildItem") = "Item " + i.ToString()
       row("ParentID") = 0 
       table.Rows.Add(row)
    Next i
    For i = 0 to 4
       row = table.NewRow()
       row("childID") = i + 5
       row("ChildItem") = "Item " + i.ToString()
       row("ParentID") = 1 
       table.Rows.Add(row)
    Next i
    For i = 0 to 4
       row = table.NewRow()
       row("childID") = i + 10
       row("ChildItem") = "Item " + i.ToString()
       row("ParentID") = 2 
       table.Rows.Add(row)
    Next i
End Sub
 
Private Sub MakeDataRelation()
    ' DataRelation requires two DataColumn 
    ' (parent and child) and a name.
    Dim parentColumn As DataColumn = _
        dataSet.Tables("ParentTable").Columns("id")
    Dim childColumn As DataColumn = _
        dataSet.Tables("ChildTable").Columns("ParentID")
    Dim relation As DataRelation = new _
        DataRelation("parent2Child", parentColumn, childColumn)
    dataSet.Tables("ChildTable").ParentRelations.Add(relation)
End Sub
 
Private Sub BindToDataGrid()
    ' Instruct the DataGrid to bind to the DataSet, with the 
    ' ParentTable as the topmost DataTable.
    DataGrid1.SetDataBinding(dataSet,"ParentTable")
End Sub

Комментарии

Дополнительные сведения об этом API см. в разделе Дополнительные примечания API для DataTable.

Конструкторы

DataTable()

Инициализирует новый экземпляр класса DataTable, не передавая ему никаких аргументов.

DataTable(SerializationInfo, StreamingContext)
Устаревшие..

Инициализирует новый экземпляр класса DataTable с сериализованными данными.

DataTable(String)

Инициализирует новый экземпляр класса DataTable с указанным именем таблицы.

DataTable(String, String)

Инициализирует новый экземпляр класса DataTable с заданными именем таблицы и пространством имен.

Поля

fInitInProgress

Проверяет, выполняется ли инициализация. Инициализация происходит во время выполнения.

Свойства

CaseSensitive

Показывает, учитывается ли регистр при сравнении строк в таблице.

ChildRelations

Получает коллекцию дочерних отношений для объекта DataTable.

Columns

Получает коллекцию столбцов, принадлежащих данной таблице.

Constraints

Получает коллекцию ограничений, содержащихся в данной таблице.

Container

Возвращает контейнер для компонента.

(Унаследовано от MarshalByValueComponent)
DataSet

Получает класс DataSet, к которому принадлежит данная таблица.

DefaultView

Получает настраиваемое представление таблицы, которая может включать в себя представление с фильтром или положение курсора.

DesignMode

Возвращает значение, показывающее, находится ли компонент в настоящий момент в режиме разработки.

(Унаследовано от MarshalByValueComponent)
DisplayExpression

Возвращает или задает выражение, возвращающее значение, используемое для представления таблицы в пользовательском интерфейсе. Свойство DisplayExpression позволяет отображать имя этой таблицы в пользовательском интерфейсе.

Events

Возвращает список обработчиков событий, которые прикреплены к этому компоненту.

(Унаследовано от MarshalByValueComponent)
ExtendedProperties

Получает коллекцию настраиваемых пользовательских сведений.

HasErrors

Получает значение, указывающее наличие ошибок в строках таблиц класса DataSet, к которому принадлежат таблицы.

IsInitialized

Получает значение, указывающее, инициализирована ли таблица DataTable.

Locale

Возвращает или задает сведения о языке, используемые для сравнения строк таблицы.

MinimumCapacity

Возвращает или задает начальный размер таблицы.

Namespace

Возвращает или задает пространство имен для представления данных объекта DataTable в формате XML.

ParentRelations

Получает коллекцию родительских отношений для объекта DataTable.

Prefix

Возвращает или задает пространство имен для представления данных объекта DataTable в формате XML.

PrimaryKey

Возвращает или задает массив столбцов, которые являются столбцами первичного ключа для таблицы данных.

RemotingFormat

Возвращает или задает формат сериализации.

Rows

Получает коллекцию строк, принадлежащих данной таблице.

Site

Возвращает или задает тип ISite для объекта DataTable.

TableName

Возвращает или задает имя таблицы для объекта DataTable.

Методы

AcceptChanges()

Фиксирует все изменения, внесенные в таблицу после последнего вызова метода AcceptChanges().

BeginInit()

Начинает инициализацию DataTable, используемого в форме или другим компонентом. Инициализация происходит во время выполнения.

BeginLoadData()

Отключает уведомления, ведение индексов и ограничения в процессе загрузки данных.

Clear()

Очищает DataTable от всех данных.

Clone()

Копирует структуру объекта DataTable, включая все схемы и ограничения DataTable.

Compute(String, String)

Вычисляет заданное выражение для текущих строк, отвечающих условию фильтра.

Copy()

Копирует структуру и данные для DataTable.

CreateDataReader()

Возвращает объект DataTableReader, соответствующий данным в этой таблице DataTable.

CreateInstance()

Создает новый экземпляр DataTable.

Dispose()

Освобождает все ресурсы, занятые модулем MarshalByValueComponent.

(Унаследовано от MarshalByValueComponent)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом MarshalByValueComponent, а при необходимости освобождает также управляемые ресурсы.

(Унаследовано от MarshalByValueComponent)
EndInit()

Завершает инициализацию DataTable, используемого в форме или другим компонентом. Инициализация происходит во время выполнения.

EndLoadData()

Включает уведомления, ведение индексов и ограничения после загрузки данных.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetChanges()

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее загрузки или после последнего вызова метода AcceptChanges().

GetChanges(DataRowState)

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее последней загрузки или после вызова метода AcceptChanges() и отфильтрованные по параметру DataRowState.

GetDataTableSchema(XmlSchemaSet)

Этот метод возвращает экземпляр XmlSchemaSet, содержащий язык описания веб-служб (WSDL), который описывает объект DataTable для веб-служб.

GetErrors()

Получает массив объектов DataRow, содержащих ошибки.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetObjectData(SerializationInfo, StreamingContext)
Устаревшие..

Заполняет объект сведений о сериализации данными, необходимыми для сериализации DataTable.

GetRowType()

Получает тип строки.

GetSchema()

Описание этого члена см. в разделе GetSchema().

GetService(Type)

Возвращает средство реализации объекта IServiceProvider.

(Унаследовано от MarshalByValueComponent)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
ImportRow(DataRow)

Копирует объект DataRow в DataTable, сохраняя все параметры свойств, а также текущие и исходные значения.

Load(IDataReader)

Заполняет таблицу DataTable значениями из источника данных с помощью предоставляемого объекта IDataReader. Если объект DataTable уже содержит строки, входящие данные из источника данных объединяются с существующими строками.

Load(IDataReader, LoadOption)

Заполняет таблицу DataTable значениями из источника данных с помощью предоставляемого объекта IDataReader. Если объект DataTable уже содержит строки, поступающие данные из источника данных объединяются с существующими строками согласно значению параметра loadOption.

Load(IDataReader, LoadOption, FillErrorEventHandler)

Заполняет таблицу DataTable значениями из источника данных с помощью предоставляемого объекта IDataReader, использующего делегат для обработки ошибок.

LoadDataRow(Object[], Boolean)

Находит и обновляет конкретную строку. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.

LoadDataRow(Object[], LoadOption)

Находит и обновляет конкретную строку. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
Merge(DataTable)

Объединяет заданный объект DataTable с текущим объектом DataTable.

Merge(DataTable, Boolean)

Объедините заданный объект DataTable с текущим объектом DataTable, указав, следует ли сохранить изменения в контейнере данных DataTable.

Merge(DataTable, Boolean, MissingSchemaAction)

Объедините заданный объект DataTable с текущим объектом DataTable, указав, следует ли сохранить изменения и способ обработки отсутствующей схемы в текущем контейнере данных DataTable.

NewRow()

Создает новый класс DataRow, имеющий ту же схему, что и таблица.

NewRowArray(Int32)

Возвращает массив DataRow.

NewRowFromBuilder(DataRowBuilder)

Создает новую строку из существующей строки.

OnColumnChanged(DataColumnChangeEventArgs)

Вызывает событие ColumnChanged.

OnColumnChanging(DataColumnChangeEventArgs)

Вызывает событие ColumnChanging.

OnPropertyChanging(PropertyChangedEventArgs)

Вызывает событие PropertyChanged.

OnRemoveColumn(DataColumn)

Сообщает классу DataTable об удалении объекта DataColumn.

OnRowChanged(DataRowChangeEventArgs)

Вызывает событие RowChanged.

OnRowChanging(DataRowChangeEventArgs)

Вызывает событие RowChanging.

OnRowDeleted(DataRowChangeEventArgs)

Вызывает событие RowDeleted.

OnRowDeleting(DataRowChangeEventArgs)

Вызывает событие RowDeleting.

OnTableCleared(DataTableClearEventArgs)

Вызывает событие TableCleared.

OnTableClearing(DataTableClearEventArgs)

Вызывает событие TableClearing.

OnTableNewRow(DataTableNewRowEventArgs)

Вызывает событие TableNewRow.

ReadXml(Stream)

Считывает XML-схему и данные в DataTable, используя указанный класс Stream.

ReadXml(String)

Читает данные и схему XML в DataTable из указанного файла.

ReadXml(TextReader)

Считывает XML-схему и данные в DataTable, используя указанный класс TextReader.

ReadXml(XmlReader)

Читает данные и схему XML в DataTable, используя указанное средство чтения XmlReader.

ReadXmlSchema(Stream)

Считывает XML-схему в DataTable, используя указанный поток.

ReadXmlSchema(String)

Считывает XML-схему из указанного файла в таблицу DataTable.

ReadXmlSchema(TextReader)

Считывает XML-схему в DataTable, используя указанный объект TextReader.

ReadXmlSchema(XmlReader)

Считывает XML-схему в DataTable, используя указанный объект XmlReader.

ReadXmlSerializable(XmlReader)

Считывает из XML-потока.

RejectChanges()

Выполняется откат всех изменений, внесенных в таблицу с момента ее загрузки или после последнего вызова метода AcceptChanges().

Reset()

Возвращает объект DataTable в исходное состояние. Сброс удаляет все данные, индексы, связи и столбцы таблицы. Если набор данных содержит таблицы данных, то таблица по-прежнему будет частью набора данных после того, как таблица будет сброшена.

Select()

Получает массив всех объектов DataRow.

Select(String)

Получает массив всех объектов DataRow, отвечающих условиям фильтра.

Select(String, String)

Получает массив всех объектов DataRow, отвечающих условиям фильтра, согласно указанному порядку сортировки.

Select(String, String, DataViewRowState)

Получает массив всех объектов DataRow, отвечающих условиям фильтра, согласно порядку сортировки, соответствующему указанному состоянию.

ToString()

Получает свойства TableName и DisplayExpression, если существует сцепленная строка.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
WriteXml(Stream)

Записывает текущее содержимое DataTable как XML с использованием указанного элемента Stream.

WriteXml(Stream, Boolean)

Записывает текущее содержимое DataTable как XML с использованием указанного элемента Stream. Чтобы сохранить данные для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXml(Stream, XmlWriteMode)

Записывает текущие данные и по возможности схему для DataTable в указанный файл с помощью заданного объекта XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema.

WriteXml(Stream, XmlWriteMode, Boolean)

Записывает текущие данные и по возможности схему для DataTable в указанный файл с помощью заданного объекта XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema. Чтобы сохранить данные для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXml(String)

Записывает текущее содержимое таблицы DataTable в формате XML, используя указанный файл.

WriteXml(String, Boolean)

Записывает текущее содержимое таблицы DataTable в формате XML, используя указанный файл. Чтобы сохранить данные для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXml(String, XmlWriteMode)

Записывает текущие данные и по возможности схему для DataTable, используя указанный файл и заданное перечисление XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema.

WriteXml(String, XmlWriteMode, Boolean)

Записывает текущие данные и по возможности схему для DataTable, используя указанный файл и заданное перечисление XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema. Чтобы сохранить данные для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXml(TextWriter)

Записывает текущее содержимое DataTable как XML с использованием указанного элемента TextWriter.

WriteXml(TextWriter, Boolean)

Записывает текущее содержимое DataTable как XML с использованием указанного элемента TextWriter. Чтобы сохранить данные для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXml(TextWriter, XmlWriteMode)

Записывает текущие данные и по возможности схему для DataTable с помощью указанных TextWriter и XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema.

WriteXml(TextWriter, XmlWriteMode, Boolean)

Записывает текущие данные и по возможности схему для DataTable с помощью указанных TextWriter и XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema. Чтобы сохранить данные для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXml(XmlWriter)

Записывает текущее содержимое DataTable как XML с использованием указанного элемента XmlWriter.

WriteXml(XmlWriter, Boolean)

Записывает текущее содержимое DataTable как XML с использованием указанного элемента XmlWriter.

WriteXml(XmlWriter, XmlWriteMode)

Записывает текущие данные и по возможности схему для DataTable с помощью указанных XmlWriter и XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema.

WriteXml(XmlWriter, XmlWriteMode, Boolean)

Записывает текущие данные и по возможности схему для DataTable с помощью указанных XmlWriter и XmlWriteMode. Чтобы записать схему, задайте в параметре mode значение WriteSchema. Чтобы сохранить данные для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXmlSchema(Stream)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы в указанный поток.

WriteXmlSchema(Stream, Boolean)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы в указанный поток. Чтобы сохранить схему для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXmlSchema(String)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы в указанный файл.

WriteXmlSchema(String, Boolean)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы в указанный файл. Чтобы сохранить схему для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXmlSchema(TextWriter)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы, используя указанный класс TextWriter.

WriteXmlSchema(TextWriter, Boolean)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы, используя указанный класс TextWriter. Чтобы сохранить схему для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

WriteXmlSchema(XmlWriter)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы, используя указанный класс XmlWriter.

WriteXmlSchema(XmlWriter, Boolean)

Записывает текущую структуру данных таблицы DataTable в виде XML-схемы, используя указанный класс XmlWriter. Чтобы сохранить схему для таблицы и всех ее потомков, установите для параметра writeHierarchy значение true.

События

ColumnChanged

Происходит после изменения значения указанного объекта DataColumn в DataRow.

ColumnChanging

Происходит при изменении значения указанного объекта DataColumn в DataRow.

Disposed

Добавляет обработчик события для ожидания события Disposed в компоненте.

(Унаследовано от MarshalByValueComponent)
Initialized

Происходит после инициализации таблицы DataTable.

RowChanged

Происходит после успешного изменения DataRow.

RowChanging

Происходит при изменении объекта DataRow.

RowDeleted

Происходит после удаления строки таблицы.

RowDeleting

Происходит перед удалением строки таблицы.

TableCleared

Происходит после очистки DataTable.

TableClearing

Происходит, когда очищается таблица DataTable.

TableNewRow

Происходит, когда вставляется новая строка DataRow.

Явные реализации интерфейса

IListSource.ContainsListCollection

Описание этого члена см. в разделе ContainsListCollection.

IListSource.GetList()

Описание этого члена см. в разделе GetList().

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Заполняет объект сведений о сериализации данными, необходимыми для сериализации DataTable.

IXmlSerializable.GetSchema()

Описание этого члена см. в разделе GetSchema().

IXmlSerializable.ReadXml(XmlReader)

Описание этого члена см. в разделе ReadXml(XmlReader).

IXmlSerializable.WriteXml(XmlWriter)

Описание этого члена см. в разделе WriteXml(XmlWriter).

Методы расширения

GetKeyedService<T>(IServiceProvider, Object)

Возвращает службу типа T из IServiceProvider.

GetKeyedServices(IServiceProvider, Type, Object)

Возвращает перечисление служб типа serviceType из IServiceProvider.

GetKeyedServices<T>(IServiceProvider, Object)

Возвращает перечисление служб типа T из IServiceProvider.

GetRequiredKeyedService(IServiceProvider, Type, Object)

Возвращает службу типа serviceType из IServiceProvider.

GetRequiredKeyedService<T>(IServiceProvider, Object)

Возвращает службу типа T из IServiceProvider.

CreateAsyncScope(IServiceProvider)

Создает интерфейс AsyncServiceScope, который может использоваться для разрешения служб с ограниченной областью.

CreateScope(IServiceProvider)

Создает интерфейс IServiceScope, который может использоваться для разрешения служб с ограниченной областью.

GetRequiredService(IServiceProvider, Type)

Возвращает службу типа serviceType из IServiceProvider.

GetRequiredService<T>(IServiceProvider)

Возвращает службу типа T из IServiceProvider.

GetService<T>(IServiceProvider)

Возвращает службу типа T из IServiceProvider.

GetServices(IServiceProvider, Type)

Возвращает перечисление служб типа serviceType из IServiceProvider.

GetServices<T>(IServiceProvider)

Возвращает перечисление служб типа T из IServiceProvider.

AsDataView(DataTable)

Создает и возвращает объект DataView с поддержкой LINQ.

AsEnumerable(DataTable)

Возвращает объект IEnumerable<T>, где универсальный параметр T имеет значение DataRow. Этот объект можно использовать в запросе выражения или метода LINQ.

GetFakeLogCollector(IServiceProvider)

Возвращает объект , который собирает записи журнала, отправляемые в поддельные средства ведения журнала.

GetFakeRedactionCollector(IServiceProvider)

Возвращает поддельный экземпляр сборщика редактора из контейнера внедрения зависимостей.

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

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

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

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