DataTable DataTable DataTable DataTable Class

Definição

Representa uma tabela de dados na memória. Represents one table of in-memory data.

public ref class DataTable : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitialize, System::ComponentModel::ISupportInitializeNotification, System::Runtime::Serialization::ISerializable, System::Xml::Serialization::IXmlSerializable
[Serializable]
public class DataTable : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitialize, System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
type DataTable = class
    inherit MarshalByValueComponent
    interface IListSource
    interface ISupportInitializeNotification
    interface ISerializable
    interface IXmlSerializable
    interface ISupportInitialize
Public Class DataTable
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitialize, ISupportInitializeNotification, IXmlSerializable
Herança
Derivado
Atributos
SerializableAttribute
Implementações

Exemplos

O exemplo a seguir cria dois DataTable objetos e um DataRelation do objeto e adiciona os novos objetos para um DataSet.The following example creates two DataTable objects and one DataRelation object, and adds the new objects to a DataSet. As tabelas são exibidas em um DataGridView controle.The tables are then displayed in a DataGridView control.

// 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 DataTable = 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 DataTable = 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
 

Este exemplo demonstra como criar uma DataTable manualmente com definições de esquema específico:This sample demonstrates how to create a DataTable manually with specific schema definitions:

  • Criar várias tabelas de dados e definir as colunas iniciais.Create multiple DataTables and define the initial columns.

  • Crie as restrições de tabela.Create the table constraints.

  • Insira os valores e exibir as tabelas.Insert the values and display the tables.

  • Criar as colunas de expressão e exibir as tabelas.Create the expression columns and display the tables.

Projetos c# e Visual Basic com este exemplo de código podem ser encontrados no exemplos de código do desenvolvedor.C# and Visual Basic projects with this code sample can be found on Developer Code Samples.

using System;
using System.Data;

class Program {
   static void Main(string[] args) {
      // Create two tables and add them into the DataSet
      DataTable orderTable = CreateOrderTable();
      DataTable orderDetailTable = CreateOrderDetailTable();
      DataSet salesSet = new DataSet();
      salesSet.Tables.Add(orderTable);
      salesSet.Tables.Add(orderDetailTable);

      // Set the relations between the tables and create the related constraint.
      salesSet.Relations.Add("OrderOrderDetail", orderTable.Columns["OrderId"], orderDetailTable.Columns["OrderId"], true);

      Console.WriteLine("After creating the foreign key constriant, you will see the following error if inserting order detail with the wrong OrderId: ");
      try {
         DataRow errorRow = orderDetailTable.NewRow();
         errorRow[0] = 1;
         errorRow[1] = "O0007";
         orderDetailTable.Rows.Add(errorRow);
      } catch (Exception e) {
         Console.WriteLine(e.Message);
      }
      Console.WriteLine();

      // Insert the rows into the table
      InsertOrders(orderTable);
      InsertOrderDetails(orderDetailTable);

      Console.WriteLine("The initial Order table.");
      ShowTable(orderTable);

      Console.WriteLine("The OrderDetail table.");
      ShowTable(orderDetailTable);

      // Use the Aggregate-Sum on the child table column to get the result.
      DataColumn colSub = new DataColumn("SubTotal", typeof(Decimal), "Sum(Child.LineTotal)");
      orderTable.Columns.Add(colSub);

      // Compute the tax by referencing the SubTotal expression column.
      DataColumn colTax = new DataColumn("Tax", typeof(Decimal), "SubTotal*0.1");
      orderTable.Columns.Add(colTax);

      // If the OrderId is 'Total', compute the due on all orders; or compute the due on this order.
      DataColumn colTotal = new DataColumn("TotalDue", typeof(Decimal), "IIF(OrderId='Total',Sum(SubTotal)+Sum(Tax),SubTotal+Tax)");
      orderTable.Columns.Add(colTotal);

      DataRow row = orderTable.NewRow();
      row["OrderId"] = "Total";
      orderTable.Rows.Add(row);

      Console.WriteLine("The Order table with the expression columns.");
      ShowTable(orderTable);

      Console.WriteLine("Press any key to exit.....");
      Console.ReadKey();
   }

   private static DataTable CreateOrderTable() {
      DataTable orderTable = new DataTable("Order");

      // Define one column.
      DataColumn colId = new DataColumn("OrderId", typeof(String));
      orderTable.Columns.Add(colId);

      DataColumn colDate = new DataColumn("OrderDate", typeof(DateTime));
      orderTable.Columns.Add(colDate);

      // Set the OrderId column as the primary key.
      orderTable.PrimaryKey = new DataColumn[] { colId };

      return orderTable;
   }

   private static DataTable CreateOrderDetailTable() {
      DataTable orderDetailTable = new DataTable("OrderDetail");

      // Define all the columns once.
      DataColumn[] cols ={
                                  new DataColumn("OrderDetailId",typeof(Int32)),
                                  new DataColumn("OrderId",typeof(String)),
                                  new DataColumn("Product",typeof(String)),
                                  new DataColumn("UnitPrice",typeof(Decimal)),
                                  new DataColumn("OrderQty",typeof(Int32)),
                                  new DataColumn("LineTotal",typeof(Decimal),"UnitPrice*OrderQty")
                              };

      orderDetailTable.Columns.AddRange(cols);
      orderDetailTable.PrimaryKey = new DataColumn[] { orderDetailTable.Columns["OrderDetailId"] };
     return orderDetailTable;
   }

   private static void InsertOrders(DataTable orderTable) {
      // Add one row once.
      DataRow row1 = orderTable.NewRow();
      row1["OrderId"] = "O0001";
      row1["OrderDate"] = new DateTime(2013, 3, 1);
      orderTable.Rows.Add(row1);

      DataRow row2 = orderTable.NewRow();
      row2["OrderId"] = "O0002";
      row2["OrderDate"] = new DateTime(2013, 3, 12);
      orderTable.Rows.Add(row2);

      DataRow row3 = orderTable.NewRow();
      row3["OrderId"] = "O0003";
      row3["OrderDate"] = new DateTime(2013, 3, 20);
      orderTable.Rows.Add(row3);
   }

   private static void InsertOrderDetails(DataTable orderDetailTable) {
      // Use an Object array to insert all the rows .
      // Values in the array are matched sequentially to the columns, based on the order in which they appear in the table.
      Object[] rows = {
                                 new Object[]{1,"O0001","Mountain Bike",1419.5,36},
                                 new Object[]{2,"O0001","Road Bike",1233.6,16},
                                 new Object[]{3,"O0001","Touring Bike",1653.3,32},
                                 new Object[]{4,"O0002","Mountain Bike",1419.5,24},
                                 new Object[]{5,"O0002","Road Bike",1233.6,12},
                                 new Object[]{6,"O0003","Mountain Bike",1419.5,48},
                                 new Object[]{7,"O0003","Touring Bike",1653.3,8},
                             };

      foreach (Object[] row in rows) {
         orderDetailTable.Rows.Add(row);
      }
   }

   private static void ShowTable(DataTable table) {
      foreach (DataColumn col in table.Columns) {
         Console.Write("{0,-14}", col.ColumnName);
      }
      Console.WriteLine();

      foreach (DataRow row in table.Rows) {
         foreach (DataColumn col in table.Columns) {
            if (col.DataType.Equals(typeof(DateTime)))
               Console.Write("{0,-14:d}", row[col]);
            else if (col.DataType.Equals(typeof(Decimal)))
               Console.Write("{0,-14:C}", row[col]);
            else
               Console.Write("{0,-14}", row[col]);           
         }
         Console.WriteLine();
      }
      Console.WriteLine();
   }
}
Imports System.Data

Class Program
   Public Shared Sub Main(args As String())
      ' Create two tables and add them into the DataSet
      Dim orderTable As DataTable = CreateOrderTable()
      Dim orderDetailTable As DataTable = CreateOrderDetailTable()
      Dim salesSet As New DataSet()
      salesSet.Tables.Add(orderTable)
      salesSet.Tables.Add(orderDetailTable)

      ' Set the relations between the tables and create the related constraint.
      salesSet.Relations.Add("OrderOrderDetail", orderTable.Columns("OrderId"), orderDetailTable.Columns("OrderId"), True)

      Console.WriteLine("After creating the foreign key constriant, you will see the following error if inserting order detail with the wrong OrderId: ")
      Try
         Dim errorRow As DataRow = orderDetailTable.NewRow()
         errorRow(0) = 1
         errorRow(1) = "O0007"
         orderDetailTable.Rows.Add(errorRow)
      Catch e As Exception
         Console.WriteLine(e.Message)
      End Try
      Console.WriteLine()

      ' Insert the rows into the table
      InsertOrders(orderTable)
      InsertOrderDetails(orderDetailTable)

      Console.WriteLine("The initial Order table.")
      ShowTable(orderTable)

      Console.WriteLine("The OrderDetail table.")
      ShowTable(orderDetailTable)

      ' Use the Aggregate-Sum on the child table column to get the result.
      Dim colSub As New DataColumn("SubTotal", GetType([Decimal]), "Sum(Child.LineTotal)")
      orderTable.Columns.Add(colSub)

      ' Compute the tax by referencing the SubTotal expression column.
      Dim colTax As New DataColumn("Tax", GetType([Decimal]), "SubTotal*0.1")
      orderTable.Columns.Add(colTax)

      ' If the OrderId is 'Total', compute the due on all orders; or compute the due on this order.
      Dim colTotal As New DataColumn("TotalDue", GetType([Decimal]), "IIF(OrderId='Total',Sum(SubTotal)+Sum(Tax),SubTotal+Tax)")
      orderTable.Columns.Add(colTotal)

      Dim row As DataRow = orderTable.NewRow()
      row("OrderId") = "Total"
      orderTable.Rows.Add(row)

      Console.WriteLine("The Order table with the expression columns.")
      ShowTable(orderTable)

      Console.WriteLine("Press any key to exit.....")
      Console.ReadKey()
   End Sub

   Private Shared Function CreateOrderTable() As DataTable
      Dim orderTable As New DataTable("Order")

      ' Define one column.
      Dim colId As New DataColumn("OrderId", GetType([String]))
      orderTable.Columns.Add(colId)

      Dim colDate As New DataColumn("OrderDate", GetType(DateTime))
      orderTable.Columns.Add(colDate)

      ' Set the OrderId column as the primary key.
      orderTable.PrimaryKey = New DataColumn() {colId}

      Return orderTable
   End Function

   Private Shared Function CreateOrderDetailTable() As DataTable
      Dim orderDetailTable As New DataTable("OrderDetail")

      ' Define all the columns once.
      Dim cols As DataColumn() = {New DataColumn("OrderDetailId", GetType(Int32)), New DataColumn("OrderId", GetType([String])), New DataColumn("Product", GetType([String])), New DataColumn("UnitPrice", GetType([Decimal])), New DataColumn("OrderQty", GetType(Int32)), New DataColumn("LineTotal", GetType([Decimal]), "UnitPrice*OrderQty")}

      orderDetailTable.Columns.AddRange(cols)
      orderDetailTable.PrimaryKey = New DataColumn() {orderDetailTable.Columns("OrderDetailId")}
      Return orderDetailTable
   End Function

   Private Shared Sub InsertOrders(orderTable As DataTable)
      ' Add one row once.
      Dim row1 As DataRow = orderTable.NewRow()
      row1("OrderId") = "O0001"
      row1("OrderDate") = New DateTime(2013, 3, 1)
      orderTable.Rows.Add(row1)

      Dim row2 As DataRow = orderTable.NewRow()
      row2("OrderId") = "O0002"
      row2("OrderDate") = New DateTime(2013, 3, 12)
      orderTable.Rows.Add(row2)

      Dim row3 As DataRow = orderTable.NewRow()
      row3("OrderId") = "O0003"
      row3("OrderDate") = New DateTime(2013, 3, 20)
      orderTable.Rows.Add(row3)
   End Sub

   Private Shared Sub InsertOrderDetails(orderDetailTable As DataTable)
      ' Use an Object array to insert all the rows .
      ' Values in the array are matched sequentially to the columns, based on the order in which they appear in the table.
      Dim rows As [Object]() = {New [Object]() {1, "O0001", "Mountain Bike", 1419.5, 36}, New [Object]() {2, "O0001", "Road Bike", 1233.6, 16}, New [Object]() {3, "O0001", "Touring Bike", 1653.3, 32}, New [Object]() {4, "O0002", "Mountain Bike", 1419.5, 24}, New [Object]() {5, "O0002", "Road Bike", 1233.6, 12}, New [Object]() {6, "O0003", "Mountain Bike", 1419.5, 48}, _
         New [Object]() {7, "O0003", "Touring Bike", 1653.3, 8}}

      For Each row As [Object]() In rows
         orderDetailTable.Rows.Add(row)
      Next
   End Sub

   Private Shared Sub ShowTable(table As DataTable)
      For Each col As DataColumn In table.Columns
         Console.Write("{0,-14}", col.ColumnName)
      Next
      Console.WriteLine()

      For Each row As DataRow In table.Rows
         For Each col As DataColumn In table.Columns
            If col.DataType.Equals(GetType(DateTime)) Then
               Console.Write("{0,-14:d}", row(col))
            ElseIf col.DataType.Equals(GetType([Decimal])) Then
               Console.Write("{0,-14:C}", row(col))
            Else
               Console.Write("{0,-14}", row(col))
            End If
         Next
         Console.WriteLine()
      Next
      Console.WriteLine()
   End Sub
End Class

Comentários

O DataTable é um objeto central na biblioteca do ADO.NET.The DataTable is a central object in the ADO.NET library. Outros objetos que usam o DataTable incluem o DataSet e o DataView.Other objects that use the DataTable include the DataSet and the DataView.

Ao acessar DataTable objetos, observe que eles são condicionalmente diferencia maiusculas de minúsculas.When accessing DataTable objects, note that they are conditionally case sensitive. Por exemplo, se houver um DataTable é denominado "mydatatable" e o outro é denominado "Mydatatable", uma cadeia de caracteres usada para pesquisar uma das tabelas é considerada como diferencia maiusculas de minúsculas.For example, if one DataTable is named "mydatatable" and another is named "Mydatatable", a string used to search for one of the tables is regarded as case sensitive. No entanto, se existe "mydatatable" e "Mydatatable" não, a cadeia de caracteres de pesquisa é considerada como diferencia maiusculas de minúsculas.However, if "mydatatable" exists and "Mydatatable" does not, the search string is regarded as case insensitive. Um DataSet pode conter dois DataTable objetos que têm o mesmo TableName o valor da propriedade, mas diferentes Namespace valores de propriedade.A DataSet can contain two DataTable objects that have the same TableName property value but different Namespace property values. Para obter mais informações sobre como trabalhar com DataTable objetos, consulte criando um DataTable.For more information about working with DataTable objects, see Creating a DataTable.

Se você estiver criando um DataTable programaticamente, você deve primeiro definir seu esquema adicionando DataColumn objetos para o DataColumnCollection (acessados por meio de Columns propriedade).If you are creating a DataTable programmatically, you must first define its schema by adding DataColumn objects to the DataColumnCollection (accessed through the Columns property). Para obter mais informações sobre como adicionar DataColumn objetos, consulte adicionando colunas a uma DataTable.For more information about adding DataColumn objects, see Adding Columns to a DataTable.

Para adicionar linhas a um DataTable, primeiro você deve usar o NewRow método para retornar um novo DataRow objeto.To add rows to a DataTable, you must first use the NewRow method to return a new DataRow object. O NewRow método retorna uma linha com o esquema de DataTable, conforme definido pela tabela de DataColumnCollection.The NewRow method returns a row with the schema of the DataTable, as it is defined by the table's DataColumnCollection. O número máximo de linhas que um DataTable pode repositório é 16,777,216.The maximum number of rows that a DataTable can store is 16,777,216. Para obter mais informações, consulte adicionando dados a uma DataTable.For more information, see Adding Data to a DataTable.

O DataTable também contém uma coleção de Constraint objetos que podem ser usados para garantir a integridade dos dados.The DataTable also contains a collection of Constraint objects that can be used to ensure the integrity of the data. Para obter mais informações, consulte restrições de DataTable.For more information, see DataTable Constraints.

Existem várias DataTable eventos que podem ser usados para determinar quando as alterações são feitas em uma tabela.There are many DataTable events that can be used to determine when changes are made to a table. Eles incluem RowChanged, RowChanging, RowDeleting, e RowDeleted.These include RowChanged, RowChanging, RowDeleting, and RowDeleted. Para obter mais informações sobre os eventos que podem ser usados com um DataTable, consulte manipulação de eventos de DataTable.For more information about the events that can be used with a DataTable, see Handling DataTable Events.

Quando uma instância do DataTable é criado, alguns de leitura/gravação são definidas com valores iniciais.When an instance of DataTable is created, some of the read/write properties are set to initial values. Para obter uma lista desses valores, consulte o DataTable.DataTable tópico de construtor.For a list of these values, see the DataTable.DataTable constructor topic.

Observação

O DataSet e DataTable objetos herdam MarshalByValueComponente dão suporte a ISerializable interface para comunicação remota do .NET Framework.The DataSet and DataTable objects inherit from MarshalByValueComponent, and support the ISerializable interface for .NET Framework remoting. Esses são os únicos objetos ADO.NET que você pode usar para comunicação remota do .NET Framework.These are the only ADO.NET objects that you can use for .NET Framework remoting.

Construtores

DataTable() DataTable() DataTable() DataTable()

Inicializa uma nova instância da classe DataTable sem argumentos. Initializes a new instance of the DataTable class with no arguments.

DataTable(SerializationInfo, StreamingContext) DataTable(SerializationInfo, StreamingContext) DataTable(SerializationInfo, StreamingContext) DataTable(SerializationInfo, StreamingContext)

Inicializa uma nova instância da classe DataTable com o SerializationInfo e o StreamingContext. Initializes a new instance of the DataTable class with the SerializationInfo and the StreamingContext.

DataTable(String) DataTable(String) DataTable(String) DataTable(String)

Inicializa uma nova instância da classe DataTable com o nome da tabela especificada. Initializes a new instance of the DataTable class with the specified table name.

DataTable(String, String) DataTable(String, String) DataTable(String, String) DataTable(String, String)

Inicializa uma nova instância da classe DataTable usando o nome de tabela e o namespace especificados. Initializes a new instance of the DataTable class using the specified table name and namespace.

Campos

fInitInProgress fInitInProgress fInitInProgress fInitInProgress

Verifica se a inicialização está em andamento. Checks whether initialization is in progress. A inicialização ocorre no tempo de execução. The initialization occurs at run time.

Propriedades

CaseSensitive CaseSensitive CaseSensitive CaseSensitive

Indica se a comparação de cadeias de caracteres dentro da tabela diferencia maiúsculas de minúsculas. Indicates whether string comparisons within the table are case-sensitive.

ChildRelations ChildRelations ChildRelations ChildRelations

Obtém a coleção das relações filho desta DataTable. Gets the collection of child relations for this DataTable.

Columns Columns Columns Columns

Obtém a coleção de colunas que pertencem a essa tabela. Gets the collection of columns that belong to this table.

Constraints Constraints Constraints Constraints

Obtém a coleção de restrições mantidas por essa tabela. Gets the collection of constraints maintained by this table.

Container Container Container Container

Obtém o contêiner para o componente. Gets the container for the component.

(Inherited from MarshalByValueComponent)
DataSet DataSet DataSet DataSet

Obtém o DataSet ao qual essa tabela pertence. Gets the DataSet to which this table belongs.

DefaultView DefaultView DefaultView DefaultView

Obtém uma exibição personalizada da tabela que pode incluir uma exibição filtrada ou uma posição do cursor. Gets a customized view of the table that may include a filtered view, or a cursor position.

DesignMode DesignMode DesignMode DesignMode

Obtém um valor que indica se o componente está atualmente no modo de design. Gets a value indicating whether the component is currently in design mode.

(Inherited from MarshalByValueComponent)
DisplayExpression DisplayExpression DisplayExpression DisplayExpression

Obtém ou define a expressão que retorna um valor usado para representar essa tabela na interface do usuário. Gets or sets the expression that returns a value used to represent this table in the user interface. A propriedade DisplayExpression permite exibir o nome da tabela em uma interface do usuário. The DisplayExpression property lets you display the name of this table in a user interface.

Events Events Events Events

Obtém a lista de manipuladores de eventos que estão anexados a este componente. Gets the list of event handlers that are attached to this component.

(Inherited from MarshalByValueComponent)
ExtendedProperties ExtendedProperties ExtendedProperties ExtendedProperties

Obtém a coleção de informações de usuário personalizadas. Gets the collection of customized user information.

HasErrors HasErrors HasErrors HasErrors

Obtém um valor que indica se há erros em alguma das linhas em uma das tabelas de DataSet a que a tabela pertence. Gets a value indicating whether there are errors in any of the rows in any of the tables of the DataSet to which the table belongs.

IsInitialized IsInitialized IsInitialized IsInitialized

Obtém um valor que indica se o DataTable é inicializado. Gets a value that indicates whether the DataTable is initialized.

Locale Locale Locale Locale

Obtém ou define as informações de localidade usadas para comparar cadeias de caracteres na tabela. Gets or sets the locale information used to compare strings within the table.

MinimumCapacity MinimumCapacity MinimumCapacity MinimumCapacity

Obtém ou define o tamanho inicial para essa tabela. Gets or sets the initial starting size for this table.

Namespace Namespace Namespace Namespace

Obtém ou define o namespace da representação XML dos dados armazenados no DataTable. Gets or sets the namespace for the XML representation of the data stored in the DataTable.

ParentRelations ParentRelations ParentRelations ParentRelations

Obtém a coleção de relações de pai desta DataTable. Gets the collection of parent relations for this DataTable.

Prefix Prefix Prefix Prefix

Obtém ou define o namespace da representação XML dos dados armazenados no DataTable. Gets or sets the namespace for the XML representation of the data stored in the DataTable.

PrimaryKey PrimaryKey PrimaryKey PrimaryKey

Obtém ou define uma matriz de colunas que funcionam como chaves primárias da tabela de dados. Gets or sets an array of columns that function as primary keys for the data table.

RemotingFormat RemotingFormat RemotingFormat RemotingFormat

Obtém ou define o formato de serialização. Gets or sets the serialization format.

Rows Rows Rows Rows

Obtém a coleção de linhas que pertencem a essa tabela. Gets the collection of rows that belong to this table.

Site Site Site Site

Obtém ou define um ISite para o DataTable. Gets or sets an ISite for the DataTable.

TableName TableName TableName TableName

Obtém ou define o nome de DataTable. Gets or sets the name of the DataTable.

Métodos

AcceptChanges() AcceptChanges() AcceptChanges() AcceptChanges()

Confirma todas as alterações feitas à tabela desde a última vez em que AcceptChanges() foi chamado. Commits all the changes made to this table since the last time AcceptChanges() was called.

BeginInit() BeginInit() BeginInit() BeginInit()

Começa a inicialização de um DataTable usado em um formulário ou por outro componente. Begins the initialization of a DataTable that is used on a form or used by another component. A inicialização ocorre no tempo de execução. The initialization occurs at run time.

BeginLoadData() BeginLoadData() BeginLoadData() BeginLoadData()

Desativa as notificações, a manutenção de índice e as restrições durante o carregamento de dados. Turns off notifications, index maintenance, and constraints while loading data.

Clear() Clear() Clear() Clear()

Limpa o DataTable de todos os dados. Clears the DataTable of all data.

Clone() Clone() Clone() Clone()

Clona a estrutura do DataTable, incluindo todos os esquemas e restrições de DataTable. Clones the structure of the DataTable, including all DataTable schemas and constraints.

Compute(String, String) Compute(String, String) Compute(String, String) Compute(String, String)

Calcula a expressão especificada nas linhas atuais que passam os critérios de filtro. Computes the given expression on the current rows that pass the filter criteria.

Copy() Copy() Copy() Copy()

Copia a estrutura e os dados para este DataTable. Copies both the structure and data for this DataTable.

CreateDataReader() CreateDataReader() CreateDataReader() CreateDataReader()

Retorna um DataTableReader correspondente aos dados nessa DataTable. Returns a DataTableReader corresponding to the data within this DataTable.

CreateInstance() CreateInstance() CreateInstance() CreateInstance()

Cria uma nova instância de DataTable. Creates a new instance of DataTable.

Dispose() Dispose() Dispose() Dispose()

Libera todos os recursos usados pelo MarshalByValueComponent. Releases all resources used by the MarshalByValueComponent.

(Inherited from MarshalByValueComponent)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libera os recursos não gerenciados usados pelo MarshalByValueComponent e opcionalmente libera os recursos gerenciados. Releases the unmanaged resources used by the MarshalByValueComponent and optionally releases the managed resources.

(Inherited from MarshalByValueComponent)
EndInit() EndInit() EndInit() EndInit()

Encerra a inicialização de um DataTable que é usado em um formulário ou por outro componente. Ends the initialization of a DataTable that is used on a form or used by another component. A inicialização ocorre no tempo de execução. The initialization occurs at run time.

EndLoadData() EndLoadData() EndLoadData() EndLoadData()

Desativa as notificações, a manutenção de índice e as restrições após o carregamento de dados. Turns on notifications, index maintenance, and constraints after loading data.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se o objeto especificado é igual ao objeto atual. Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetChanges() GetChanges() GetChanges() GetChanges()

Obtém uma cópia do DataTable que contém todas as alterações feitas nele desde que ele foi carregado ou que o AcceptChanges() foi chamado pela última vez. Gets a copy of the DataTable that contains all changes made to it since it was loaded or AcceptChanges() was last called.

GetChanges(DataRowState) GetChanges(DataRowState) GetChanges(DataRowState) GetChanges(DataRowState)

Obtém uma cópia do DataTable que contém todas as alterações feitas desde o último carregamento ou desde que AcceptChanges() foi chamado, filtrado por DataRowState. Gets a copy of the DataTable containing all changes made to it since it was last loaded, or since AcceptChanges() was called, filtered by DataRowState.

GetDataTableSchema(XmlSchemaSet) GetDataTableSchema(XmlSchemaSet) GetDataTableSchema(XmlSchemaSet) GetDataTableSchema(XmlSchemaSet)

Esse método retorna uma instância XmlSchemaSet que contém a linguagem WSDL que descreve o DataTable para os Serviços Web. This method returns an XmlSchemaSet instance containing the Web Services Description Language (WSDL) that describes the DataTable for Web Services.

GetErrors() GetErrors() GetErrors() GetErrors()

Obtém uma matriz de objetos DataRow que contêm erros. Gets an array of DataRow objects that contain errors.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Serve como a função de hash padrão. Serves as the default hash function.

(Inherited from Object)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

Popula um objeto de informações de serialização com os dados necessários para serializar o DataTable. Populates a serialization information object with the data needed to serialize the DataTable.

GetRowType() GetRowType() GetRowType() GetRowType()

Obtém o tipo de linha. Gets the row type.

GetSchema() GetSchema() GetSchema() GetSchema()

Para obter uma descrição desse membro, consulte GetSchema(). For a description of this member, see GetSchema().

GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Obtém o implementador do IServiceProvider. Gets the implementer of the IServiceProvider.

(Inherited from MarshalByValueComponent)
GetType() GetType() GetType() GetType()

Obtém o Type da instância atual. Gets the Type of the current instance.

(Inherited from Object)
ImportRow(DataRow) ImportRow(DataRow) ImportRow(DataRow) ImportRow(DataRow)

Copia um DataRow em um DataTable, preservando quaisquer configurações de propriedade, bem como os valores originais e atuais. Copies a DataRow into a DataTable, preserving any property settings, as well as original and current values.

Load(IDataReader) Load(IDataReader) Load(IDataReader) Load(IDataReader)

Preenche um DataTable com valores de uma fonte de dados usando o IDataReaderfornecido. Fills a DataTable with values from a data source using the supplied IDataReader. Se o DataTable já contiver linhas, os dados de entrada da fonte de dados serão mesclados com as linhas existentes. If the DataTable already contains rows, the incoming data from the data source is merged with the existing rows.

Load(IDataReader, LoadOption) Load(IDataReader, LoadOption) Load(IDataReader, LoadOption) Load(IDataReader, LoadOption)

Preenche um DataTable com valores de uma fonte de dados usando o IDataReaderfornecido. Fills a DataTable with values from a data source using the supplied IDataReader. Se o DataTable já contiver linhas, os dados de entrada da fonte de dados serão mesclados com as linhas existentes de acordo com o valor do parâmetro loadOption. If the DataTable already contains rows, the incoming data from the data source is merged with the existing rows according to the value of the loadOption parameter.

Load(IDataReader, LoadOption, FillErrorEventHandler) Load(IDataReader, LoadOption, FillErrorEventHandler) Load(IDataReader, LoadOption, FillErrorEventHandler) Load(IDataReader, LoadOption, FillErrorEventHandler)

Preenche um DataTable com valores de uma fonte de dados usando o IDataReader fornecido comum delegado de tratamento de erro. Fills a DataTable with values from a data source using the supplied IDataReader using an error-handling delegate.

LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean)

Localiza e atualiza uma linha específica. Finds and updates a specific row. Se nenhuma linha correspondente for encontrada, uma nova linha será criada usando os valores fornecidos. If no matching row is found, a new row is created using the given values.

LoadDataRow(Object[], LoadOption) LoadDataRow(Object[], LoadOption) LoadDataRow(Object[], LoadOption) LoadDataRow(Object[], LoadOption)

Localiza e atualiza uma linha específica. Finds and updates a specific row. Se nenhuma linha correspondente for encontrada, uma nova linha será criada usando os valores fornecidos. If no matching row is found, a new row is created using the given values.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Cria uma cópia superficial do Object atual. Creates a shallow copy of the current Object.

(Inherited from Object)
Merge(DataTable) Merge(DataTable) Merge(DataTable) Merge(DataTable)

Mesclar o DataTable especificado ao DataTable atual. Merge the specified DataTable with the current DataTable.

Merge(DataTable, Boolean) Merge(DataTable, Boolean) Merge(DataTable, Boolean) Merge(DataTable, Boolean)

Mescla o DataTable especificado com o DataTable atual, indicando se as alterações no DataTable atual devem ser preservadas. Merge the specified DataTable with the current DataTable, indicating whether to preserve changes in the current DataTable.

Merge(DataTable, Boolean, MissingSchemaAction) Merge(DataTable, Boolean, MissingSchemaAction) Merge(DataTable, Boolean, MissingSchemaAction) Merge(DataTable, Boolean, MissingSchemaAction)

Mescla o DataTable especificado com o DataTable atual, indicando se as alterações e a maneira como manipular o esquema ausente no DataTable atual devem ser preservadas. Merge the specified DataTable with the current DataTable, indicating whether to preserve changes and how to handle missing schema in the current DataTable.

NewRow() NewRow() NewRow() NewRow()

Cria um novo DataRow com o mesmo esquema que a tabela. Creates a new DataRow with the same schema as the table.

NewRowArray(Int32) NewRowArray(Int32) NewRowArray(Int32) NewRowArray(Int32)

Retorna uma matriz de DataRow. Returns an array of DataRow.

NewRowFromBuilder(DataRowBuilder) NewRowFromBuilder(DataRowBuilder) NewRowFromBuilder(DataRowBuilder) NewRowFromBuilder(DataRowBuilder)

Cria uma nova linha de uma linha existente. Creates a new row from an existing row.

OnColumnChanged(DataColumnChangeEventArgs) OnColumnChanged(DataColumnChangeEventArgs) OnColumnChanged(DataColumnChangeEventArgs) OnColumnChanged(DataColumnChangeEventArgs)

Aciona o evento ColumnChanged. Raises the ColumnChanged event.

OnColumnChanging(DataColumnChangeEventArgs) OnColumnChanging(DataColumnChangeEventArgs) OnColumnChanging(DataColumnChangeEventArgs) OnColumnChanging(DataColumnChangeEventArgs)

Aciona o evento ColumnChanging. Raises the ColumnChanging event.

OnPropertyChanging(PropertyChangedEventArgs) OnPropertyChanging(PropertyChangedEventArgs) OnPropertyChanging(PropertyChangedEventArgs) OnPropertyChanging(PropertyChangedEventArgs)

Aciona o evento PropertyChanged. Raises the PropertyChanged event.

OnRemoveColumn(DataColumn) OnRemoveColumn(DataColumn) OnRemoveColumn(DataColumn) OnRemoveColumn(DataColumn)

Notifica o DataTable que um DataColumn está sendo removido. Notifies the DataTable that a DataColumn is being removed.

OnRowChanged(DataRowChangeEventArgs) OnRowChanged(DataRowChangeEventArgs) OnRowChanged(DataRowChangeEventArgs) OnRowChanged(DataRowChangeEventArgs)

Aciona o evento RowChanged. Raises the RowChanged event.

OnRowChanging(DataRowChangeEventArgs) OnRowChanging(DataRowChangeEventArgs) OnRowChanging(DataRowChangeEventArgs) OnRowChanging(DataRowChangeEventArgs)

Aciona o evento RowChanging. Raises the RowChanging event.

OnRowDeleted(DataRowChangeEventArgs) OnRowDeleted(DataRowChangeEventArgs) OnRowDeleted(DataRowChangeEventArgs) OnRowDeleted(DataRowChangeEventArgs)

Aciona o evento RowDeleted. Raises the RowDeleted event.

OnRowDeleting(DataRowChangeEventArgs) OnRowDeleting(DataRowChangeEventArgs) OnRowDeleting(DataRowChangeEventArgs) OnRowDeleting(DataRowChangeEventArgs)

Aciona o evento RowDeleting. Raises the RowDeleting event.

OnTableCleared(DataTableClearEventArgs) OnTableCleared(DataTableClearEventArgs) OnTableCleared(DataTableClearEventArgs) OnTableCleared(DataTableClearEventArgs)

Aciona o evento TableCleared. Raises the TableCleared event.

OnTableClearing(DataTableClearEventArgs) OnTableClearing(DataTableClearEventArgs) OnTableClearing(DataTableClearEventArgs) OnTableClearing(DataTableClearEventArgs)

Aciona o evento TableClearing. Raises the TableClearing event.

OnTableNewRow(DataTableNewRowEventArgs) OnTableNewRow(DataTableNewRowEventArgs) OnTableNewRow(DataTableNewRowEventArgs) OnTableNewRow(DataTableNewRowEventArgs)

Aciona o evento TableNewRow. Raises the TableNewRow event.

ReadXml(Stream) ReadXml(Stream) ReadXml(Stream) ReadXml(Stream)

Lê o esquema XML e dados para o DataTable usando o Stream especificado. Reads XML schema and data into the DataTable using the specified Stream.

ReadXml(String) ReadXml(String) ReadXml(String) ReadXml(String)

Lê o esquema XML e dados para o DataTable do arquivo especificado. Reads XML schema and data into the DataTable from the specified file.

ReadXml(TextReader) ReadXml(TextReader) ReadXml(TextReader) ReadXml(TextReader)

Lê o esquema XML e dados para o DataTable usando o TextReader especificado. Reads XML schema and data into the DataTable using the specified TextReader.

ReadXml(XmlReader) ReadXml(XmlReader) ReadXml(XmlReader) ReadXml(XmlReader)

Lê o esquema XML e dados no DataTable usando o XmlReader especificado. Reads XML Schema and Data into the DataTable using the specified XmlReader.

ReadXmlSchema(Stream) ReadXmlSchema(Stream) ReadXmlSchema(Stream) ReadXmlSchema(Stream)

Lê um esquema XML para a DataTable usando o fluxo especificado. Reads an XML schema into the DataTable using the specified stream.

ReadXmlSchema(String) ReadXmlSchema(String) ReadXmlSchema(String) ReadXmlSchema(String)

Lê um esquema XML para a DataTable do arquivo especificado. Reads an XML schema into the DataTable from the specified file.

ReadXmlSchema(TextReader) ReadXmlSchema(TextReader) ReadXmlSchema(TextReader) ReadXmlSchema(TextReader)

Lê um esquema XML para a DataTable usando o TextReader especificado. Reads an XML schema into the DataTable using the specified TextReader.

ReadXmlSchema(XmlReader) ReadXmlSchema(XmlReader) ReadXmlSchema(XmlReader) ReadXmlSchema(XmlReader)

Lê um esquema XML para a DataTable usando o XmlReader especificado. Reads an XML schema into the DataTable using the specified XmlReader.

ReadXmlSerializable(XmlReader) ReadXmlSerializable(XmlReader) ReadXmlSerializable(XmlReader) ReadXmlSerializable(XmlReader)

Lê de um fluxo XML. Reads from an XML stream.

RejectChanges() RejectChanges() RejectChanges() RejectChanges()

Reverte todas as alterações feitas na tabela desde que foi carregado ou desde a última vez em que AcceptChanges() foi chamado. Rolls back all changes that have been made to the table since it was loaded, or the last time AcceptChanges() was called.

Reset() Reset() Reset() Reset()

Redefine o DataTable com o estado original. Resets the DataTable to its original state. A redefinição remove todos os dados, índices, relações e colunas da tabela. Reset removes all data, indexes, relations, and columns of the table. Se um DataSet incluir uma DataTable, a tabela ainda fará parte do DataSet depois que a tabela for redefinida. If a DataSet includes a DataTable, the table will still be part of the DataSet after the table is reset.

Select() Select() Select() Select()

Obtém uma matriz de todos os objetos DataRow. Gets an array of all DataRow objects.

Select(String) Select(String) Select(String) Select(String)

Obtém uma matriz de todos os objetos DataRow que correspondem aos critérios de filtro. Gets an array of all DataRow objects that match the filter criteria.

Select(String, String) Select(String, String) Select(String, String) Select(String, String)

Obtém uma matriz de todos os objetos DataRow que correspondem aos critérios de filtro, na ordem de classificação especificada. Gets an array of all DataRow objects that match the filter criteria, in the specified sort order.

Select(String, String, DataViewRowState) Select(String, String, DataViewRowState) Select(String, String, DataViewRowState) Select(String, String, DataViewRowState)

Obtém uma matriz de todos os objetos DataRow que correspondem ao filtro, na ordem de classificação correspondente ao estado especificado. Gets an array of all DataRow objects that match the filter in the order of the sort that match the specified state.

ToString() ToString() ToString() ToString()

Obterá o TableName e a DisplayExpression, se houver algum como uma cadeia de caracteres concatenada. Gets the TableName and DisplayExpression, if there is one as a concatenated string.

WriteXml(Stream) WriteXml(Stream) WriteXml(Stream) WriteXml(Stream)

Grava o conteúdo atual do DataTable como XML usando o Stream especificado. Writes the current contents of the DataTable as XML using the specified Stream.

WriteXml(Stream, Boolean) WriteXml(Stream, Boolean) WriteXml(Stream, Boolean) WriteXml(Stream, Boolean)

Grava o conteúdo atual do DataTable como XML usando o Stream especificado. Writes the current contents of the DataTable as XML using the specified Stream. Para salvar os dados para a tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode) WriteXml(Stream, XmlWriteMode)

Grava os dados atuais e, opcionalmente, o esquema do DataTable no arquivo especificado usando o XmlWriteMode especificado. Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean) WriteXml(Stream, XmlWriteMode, Boolean)

Grava os dados atuais e, opcionalmente, o esquema do DataTable no arquivo especificado usando o XmlWriteMode especificado. Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema. Para salvar os dados para a tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String) WriteXml(String) WriteXml(String) WriteXml(String)

Grava o conteúdo atual da DataTable como XML usando o arquivo especificado. Writes the current contents of the DataTable as XML using the specified file.

WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean) WriteXml(String, Boolean)

Grava o conteúdo atual da DataTable como XML usando o arquivo especificado. Writes the current contents of the DataTable as XML using the specified file. Para salvar os dados para a tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode) WriteXml(String, XmlWriteMode)

Grava os dados atuais e, opcionalmente, o esquema da DataTable usando o arquivo especificado e o XmlWriteMode. Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean) WriteXml(String, XmlWriteMode, Boolean)

Grava os dados atuais e, opcionalmente, o esquema da DataTable usando o arquivo especificado e o XmlWriteMode. Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema. Para salvar os dados para a tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter) WriteXml(TextWriter)

Grava o conteúdo atual do DataTable como XML usando o TextWriter especificado. Writes the current contents of the DataTable as XML using the specified TextWriter.

WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean) WriteXml(TextWriter, Boolean)

Grava o conteúdo atual do DataTable como XML usando o TextWriter especificado. Writes the current contents of the DataTable as XML using the specified TextWriter. Para salvar os dados para a tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode) WriteXml(TextWriter, XmlWriteMode)

Grava os dados atuais e, opcionalmente, o esquema do DataTable usando o TextWriter e o XmlWriteMode especificados. Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean) WriteXml(TextWriter, XmlWriteMode, Boolean)

Grava os dados atuais e, opcionalmente, o esquema do DataTable usando o TextWriter e o XmlWriteMode especificados. Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema. Para salvar os dados para a tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter) WriteXml(XmlWriter)

Grava o conteúdo atual do DataTable como XML usando o XmlWriter especificado. Writes the current contents of the DataTable as XML using the specified XmlWriter.

WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean) WriteXml(XmlWriter, Boolean)

Grava o conteúdo atual do DataTable como XML usando o XmlWriter especificado. Writes the current contents of the DataTable as XML using the specified XmlWriter.

WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode) WriteXml(XmlWriter, XmlWriteMode)

Grava os dados atuais e, opcionalmente, o esquema do DataTable usando o XmlWriter e o XmlWriteMode especificados. Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean) WriteXml(XmlWriter, XmlWriteMode, Boolean)

Grava os dados atuais e, opcionalmente, o esquema do DataTable usando o XmlWriter e o XmlWriteMode especificados. Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Para gravar o esquema, defina o valor do parâmetro mode como WriteSchema. To write the schema, set the value for the mode parameter to WriteSchema. Para salvar os dados para a tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(Stream) WriteXmlSchema(Stream) WriteXmlSchema(Stream) WriteXmlSchema(Stream)

Grava a estrutura de dados atual do DataTable como um esquema XML para o fluxo especificado. Writes the current data structure of the DataTable as an XML schema to the specified stream.

WriteXmlSchema(Stream, Boolean) WriteXmlSchema(Stream, Boolean) WriteXmlSchema(Stream, Boolean) WriteXmlSchema(Stream, Boolean)

Grava a estrutura de dados atual do DataTable como um esquema XML para o fluxo especificado. Writes the current data structure of the DataTable as an XML schema to the specified stream. Para salvar o esquema da tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(String) WriteXmlSchema(String) WriteXmlSchema(String) WriteXmlSchema(String)

Grava a estrutura de dados atual do DataTable como um esquema XML para o arquivo especificado. Writes the current data structure of the DataTable as an XML schema to the specified file.

WriteXmlSchema(String, Boolean) WriteXmlSchema(String, Boolean) WriteXmlSchema(String, Boolean) WriteXmlSchema(String, Boolean)

Grava a estrutura de dados atual do DataTable como um esquema XML para o arquivo especificado. Writes the current data structure of the DataTable as an XML schema to the specified file. Para salvar o esquema da tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(TextWriter) WriteXmlSchema(TextWriter) WriteXmlSchema(TextWriter) WriteXmlSchema(TextWriter)

Grava a estrutura de dados atual do DataTable como um esquema XML usando o TextWriter especificado. Writes the current data structure of the DataTable as an XML schema using the specified TextWriter.

WriteXmlSchema(TextWriter, Boolean) WriteXmlSchema(TextWriter, Boolean) WriteXmlSchema(TextWriter, Boolean) WriteXmlSchema(TextWriter, Boolean)

Grava a estrutura de dados atual do DataTable como um esquema XML usando o TextWriter especificado. Writes the current data structure of the DataTable as an XML schema using the specified TextWriter. Para salvar o esquema da tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(XmlWriter) WriteXmlSchema(XmlWriter) WriteXmlSchema(XmlWriter) WriteXmlSchema(XmlWriter)

Grava a estrutura de dados atual do DataTable como um esquema XML usando o XmlWriter especificado. Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter.

WriteXmlSchema(XmlWriter, Boolean) WriteXmlSchema(XmlWriter, Boolean) WriteXmlSchema(XmlWriter, Boolean) WriteXmlSchema(XmlWriter, Boolean)

Grava a estrutura de dados atual do DataTable como um esquema XML usando o XmlWriter especificado. Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter. Para salvar o esquema da tabela e todos os descendentes, defina o parâmetro writeHierarchy como true. To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

Eventos

ColumnChanged ColumnChanged ColumnChanged ColumnChanged

Ocorre depois que um valor foi alterado para o DataColumn especificado em um DataRow. Occurs after a value has been changed for the specified DataColumn in a DataRow.

ColumnChanging ColumnChanging ColumnChanging ColumnChanging

Ocorre quando um valor está sendo alterado para o DataColumn especificado em um DataRow. Occurs when a value is being changed for the specified DataColumn in a DataRow.

Disposed Disposed Disposed Disposed

Adiciona um manipulador de eventos para escutar o evento Disposed no componente. Adds an event handler to listen to the Disposed event on the component.

(Inherited from MarshalByValueComponent)
Initialized Initialized Initialized Initialized

Ocorre após o DataTable ser inicializado. Occurs after the DataTable is initialized.

RowChanged RowChanged RowChanged RowChanged

Ocorre após um DataRow ter sido alterado com êxito. Occurs after a DataRow has been changed successfully.

RowChanging RowChanging RowChanging RowChanging

Ocorre quando uma DataRow está sendo alterada. Occurs when a DataRow is changing.

RowDeleted RowDeleted RowDeleted RowDeleted

Ocorre depois que uma linha na tabela é excluída. Occurs after a row in the table has been deleted.

RowDeleting RowDeleting RowDeleting RowDeleting

Ocorre antes de uma linha na tabela estar prestes a ser excluída. Occurs before a row in the table is about to be deleted.

TableCleared TableCleared TableCleared TableCleared

Ocorre depois que uma DataTable é limpa. Occurs after a DataTable is cleared.

TableClearing TableClearing TableClearing TableClearing

Ocorre quando uma DataTable é limpa. Occurs when a DataTable is cleared.

TableNewRow TableNewRow TableNewRow TableNewRow

Ocorre quando um novo DataRow é inserido. Occurs when a new DataRow is inserted.

Implantações explícitas de interface

IListSource.ContainsListCollection IListSource.ContainsListCollection IListSource.ContainsListCollection IListSource.ContainsListCollection

Para obter uma descrição desse membro, consulte ContainsListCollection. For a description of this member, see ContainsListCollection.

IListSource.GetList() IListSource.GetList() IListSource.GetList() IListSource.GetList()

Para obter uma descrição desse membro, consulte GetList(). For a description of this member, see GetList().

ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext)
IXmlSerializable.GetSchema() IXmlSerializable.GetSchema() IXmlSerializable.GetSchema() IXmlSerializable.GetSchema()

Para obter uma descrição desse membro, consulte GetSchema(). For a description of this member, see GetSchema().

IXmlSerializable.ReadXml(XmlReader) IXmlSerializable.ReadXml(XmlReader) IXmlSerializable.ReadXml(XmlReader) IXmlSerializable.ReadXml(XmlReader)

Para obter uma descrição desse membro, consulte ReadXml(XmlReader). For a description of this member, see ReadXml(XmlReader).

IXmlSerializable.WriteXml(XmlWriter) IXmlSerializable.WriteXml(XmlWriter) IXmlSerializable.WriteXml(XmlWriter) IXmlSerializable.WriteXml(XmlWriter)

Para obter uma descrição desse membro, consulte WriteXml(XmlWriter). For a description of this member, see WriteXml(XmlWriter).

Aplica-se a

Acesso thread-safe

Este tipo é seguro para operações de leitura e multithread. This type is safe for multithreaded read operations. Você deve sincronizar todas as operações de gravação. You must synchronize any write operations.

Veja também