DataTable Klasa

Definicja

Reprezentuje jedną tabelę danych w pamięci.Represents one table of in-memory data.

public ref class DataTable : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitializeNotification, System::Runtime::Serialization::ISerializable, System::Xml::Serialization::IXmlSerializable
[System.Serializable]
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 ISupportInitializeNotification
    interface ISerializable
    interface IXmlSerializable
    interface ISupportInitialize
Public Class DataTable
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitializeNotification, IXmlSerializable
Dziedziczenie
Pochodne
Atrybuty
Implementuje

Przykłady

Poniższy przykład tworzy dwa DataTable obiekty i jeden DataRelation obiekt i dodaje nowe obiekty do DataSet.The following example creates two DataTable objects and one DataRelation object, and adds the new objects to a DataSet. Tabele są następnie wyświetlane w DataGridView kontrolce.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 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
 

Ten przykład pokazuje, jak utworzyć element DataTable ręcznie przy użyciu określonych definicji schematu:This sample demonstrates how to create a DataTable manually with specific schema definitions:

  • Utwórz wiele tabel DataTables i Zdefiniuj kolumny początkowe.Create multiple DataTables and define the initial columns.

  • Utwórz ograniczenia tabeli.Create the table constraints.

  • Wstaw wartości i Wyświetl tabele.Insert the values and display the tables.

  • Utwórz kolumny wyrażeń i Wyświetl tabele.Create the expression columns and display the tables.

C#Visual Basic projekty z tym przykładem kodu można znaleźć na przykładach kodu dewelopera.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

Uwagi

DataTable Jest obiektem centralnym w bibliotece ADO.NET.The DataTable is a central object in the ADO.NET library. Inne obiekty, w których DataTable jest używana DataSet funkcja include DataViewi.Other objects that use the DataTable include the DataSet and the DataView.

Podczas uzyskiwania DataTable dostępu do obiektów należy zauważyć, że są warunkowe uwzględnianie wielkości liter.When accessing DataTable objects, note that they are conditionally case sensitive. Na przykład, jeśli jeden DataTable z nich nosi nazwę "webtables", a drugi o nazwie "webtablee", ciąg używany do wyszukiwania jednej z tabel jest traktowany jako uwzględniający wielkość liter.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. Jeśli jednak "istnieje" i "nie jest", to ciąg wyszukiwania jest traktowany jako nieuwzględniający wielkości liter.However, if "mydatatable" exists and "Mydatatable" does not, the search string is regarded as case insensitive. Może zawierać dwa DataTable obiekty, które mają taką samą TableName wartość właściwości, ale Namespace różne wartości właściwości. DataSetA DataSet can contain two DataTable objects that have the same TableName property value but different Namespace property values. Aby uzyskać więcej informacji na temat DataTable pracy z obiektami, zobacz Tworzenie elementu DataTable.For more information about working with DataTable objects, see Creating a DataTable.

Jeśli tworzysz DataTable program programowo, musisz najpierw zdefiniować jego schemat, dodając DataColumn obiekty do DataColumnCollection (dostępne za pomocą Columns właściwości).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). Aby uzyskać więcej informacji na DataColumn temat dodawania obiektów, zobacz Dodawanie kolumn do tabeli DataTable.For more information about adding DataColumn objects, see Adding Columns to a DataTable.

Aby dodać wiersze do DataTable, należy najpierw NewRow użyć metody do zwrócenia nowego DataRow obiektu.To add rows to a DataTable, you must first use the NewRow method to return a new DataRow object. Metoda zwraca wiersz ze schematem DataTable, ponieważ jest on DataColumnCollectiondefiniowany przez tabelę. NewRowThe NewRow method returns a row with the schema of the DataTable, as it is defined by the table's DataColumnCollection. Maksymalna liczba wierszy, które mogą być DataTable przechowywane, to 16 777 216.The maximum number of rows that a DataTable can store is 16,777,216. Aby uzyskać więcej informacji, zobacz Dodawanie danych do elementu DataTable.For more information, see Adding Data to a DataTable.

Zawiera DataTable również Constraint kolekcję obiektów, których można użyć w celu zapewnienia integralności danych.The DataTable also contains a collection of Constraint objects that can be used to ensure the integrity of the data. Aby uzyskać więcej informacji, zobacz temat ograniczenia DataTable.For more information, see DataTable Constraints.

Istnieje wiele DataTable zdarzeń, których można użyć do określenia, kiedy zmiany są wprowadzane do tabeli.There are many DataTable events that can be used to determine when changes are made to a table. Należą RowChangeddo nich RowChanging, RowDeleting,, RowDeletedi.These include RowChanged, RowChanging, RowDeleting, and RowDeleted. Aby uzyskać więcej informacji o zdarzeniach, które mogą być używane DataTablez, zobacz obsługiwanie zdarzeń DataTable.For more information about the events that can be used with a DataTable, see Handling DataTable Events.

Po utworzeniu wystąpienia programu DataTable niektóre właściwości odczytu/zapisu są ustawiane na wartości początkowe.When an instance of DataTable is created, some of the read/write properties are set to initial values. Aby uzyskać listę tych wartości, zobacz DataTable.DataTable temat Konstruktor.For a list of these values, see the DataTable.DataTable constructor topic.

Uwaga

Obiekty DataSet i DataTableMarshalByValueComponent dziedziczoneISerializable z i obsługują interfejs do .NET Framework komunikacji zdalnej.The DataSet and DataTable objects inherit from MarshalByValueComponent, and support the ISerializable interface for .NET Framework remoting. Są to jedyne obiekty ADO.NET, których można używać na potrzeby komunikacji zdalnej .NET Framework.These are the only ADO.NET objects that you can use for .NET Framework remoting.

Konstruktory

DataTable()

Inicjuje nowe wystąpienie DataTable klasy bez argumentów.Initializes a new instance of the DataTable class with no arguments.

DataTable(SerializationInfo, StreamingContext)

Inicjuje nowe wystąpienie DataTable klasy SerializationInfo z i StreamingContext.Initializes a new instance of the DataTable class with the SerializationInfo and the StreamingContext.

DataTable(String)

Inicjuje nowe wystąpienie DataTable klasy z określoną nazwą tabeli.Initializes a new instance of the DataTable class with the specified table name.

DataTable(String, String)

Inicjuje nowe wystąpienie DataTable klasy przy użyciu określonej nazwy tabeli i przestrzeni nazw.Initializes a new instance of the DataTable class using the specified table name and namespace.

Pola

fInitInProgress

Sprawdza, czy inicjowanie jest w toku.Checks whether initialization is in progress. Inicjalizacja występuje w czasie wykonywania.The initialization occurs at run time.

Właściwości

CaseSensitive

Wskazuje, czy porównania ciągów w tabeli są rozróżniane wielkości liter.Indicates whether string comparisons within the table are case-sensitive.

ChildRelations

Pobiera kolekcję relacji DataTablepodrzędnych.Gets the collection of child relations for this DataTable.

Columns

Pobiera kolekcję kolumn, które należą do tej tabeli.Gets the collection of columns that belong to this table.

Constraints

Pobiera kolekcję ograniczeń obsługiwanych przez tę tabelę.Gets the collection of constraints maintained by this table.

Container

Pobiera kontener dla składnika.Gets the container for the component.

(Odziedziczone po MarshalByValueComponent)
DataSet

Pobiera, DataSet do której należy ta tabela.Gets the DataSet to which this table belongs.

DefaultView

Pobiera dostosowany widok tabeli, który może zawierać filtrowany widok lub położenie kursora.Gets a customized view of the table that may include a filtered view, or a cursor position.

DesignMode

Pobiera wartość wskazującą, czy składnik jest aktualnie w trybie projektowania.Gets a value indicating whether the component is currently in design mode.

(Odziedziczone po MarshalByValueComponent)
DisplayExpression

Pobiera lub ustawia wyrażenie zwracające wartość używaną do reprezentowania tej tabeli w interfejsie użytkownika.Gets or sets the expression that returns a value used to represent this table in the user interface. DisplayExpression Właściwość umożliwia wyświetlenie nazwy tej tabeli w interfejsie użytkownika.The DisplayExpression property lets you display the name of this table in a user interface.

Events

Pobiera listę programów obsługi zdarzeń, które są dołączone do tego składnika.Gets the list of event handlers that are attached to this component.

(Odziedziczone po MarshalByValueComponent)
ExtendedProperties

Pobiera kolekcję dostosowanych informacji o użytkowniku.Gets the collection of customized user information.

HasErrors

Pobiera wartość wskazującą, czy w którymkolwiek z tabel, do których należy tabela, DataSet występują błędy.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

Pobiera wartość wskazującą, czy DataTable jest zainicjowany.Gets a value that indicates whether the DataTable is initialized.

Locale

Pobiera lub ustawia informacje o ustawieniach regionalnych używane do porównywania ciągów w tabeli.Gets or sets the locale information used to compare strings within the table.

MinimumCapacity

Pobiera lub ustawia początkowy rozmiar początkowy dla tej tabeli.Gets or sets the initial starting size for this table.

Namespace

Pobiera lub ustawia przestrzeń nazw dla reprezentacji XML danych przechowywanych w DataTable.Gets or sets the namespace for the XML representation of the data stored in the DataTable.

ParentRelations

Pobiera kolekcję relacji DataTablenadrzędnych.Gets the collection of parent relations for this DataTable.

Prefix

Pobiera lub ustawia przestrzeń nazw dla reprezentacji XML danych przechowywanych w DataTable.Gets or sets the namespace for the XML representation of the data stored in the DataTable.

PrimaryKey

Pobiera lub ustawia tablicę kolumn, które działają jako klucze podstawowe tabeli danych.Gets or sets an array of columns that function as primary keys for the data table.

RemotingFormat

Pobiera lub ustawia format serializacji.Gets or sets the serialization format.

Rows

Pobiera kolekcję wierszy, które należą do tej tabeli.Gets the collection of rows that belong to this table.

Site

Pobiera lub ustawia ISite DataTabledla elementu.Gets or sets an ISite for the DataTable.

TableName

Pobiera lub ustawia nazwę DataTable.Gets or sets the name of the DataTable.

Metody

AcceptChanges()

Zatwierdza wszystkie zmiany wprowadzone w tej tabeli od momentu ostatniego AcceptChanges() wywołania.Commits all the changes made to this table since the last time AcceptChanges() was called.

BeginInit()

Rozpoczyna inicjalizację DataTable , która jest używana w formularzu lub używana przez inny składnik.Begins the initialization of a DataTable that is used on a form or used by another component. Inicjalizacja występuje w czasie wykonywania.The initialization occurs at run time.

BeginLoadData()

Wyłącza powiadomienia, konserwację indeksu i ograniczenia podczas ładowania danych.Turns off notifications, index maintenance, and constraints while loading data.

Clear()

DataTable Czyści wszystkie dane.Clears the DataTable of all data.

Clone()

Klonuje strukturę DataTable, łącznie ze wszystkimi DataTable schematami i ograniczeniami.Clones the structure of the DataTable, including all DataTable schemas and constraints.

Compute(String, String)

Oblicza określone wyrażenie dla bieżących wierszy, które przeszły kryteria filtrowania.Computes the given expression on the current rows that pass the filter criteria.

Copy()

Kopiuje zarówno strukturę, jak i dane DataTable.Copies both the structure and data for this DataTable.

CreateDataReader()

Zwraca odpowiadającą dane w tym DataTableelemencie. DataTableReaderReturns a DataTableReader corresponding to the data within this DataTable.

CreateInstance()

Tworzy nowe wystąpienie DataTable.Creates a new instance of DataTable.

Dispose()

Zwalnia wszystkie zasoby używane przez MarshalByValueComponentprogram.Releases all resources used by the MarshalByValueComponent.

(Odziedziczone po MarshalByValueComponent)
Dispose(Boolean)

Zwalnia niezarządzane zasoby używane przez MarshalByValueComponent program i opcjonalnie zwalnia zarządzane zasoby.Releases the unmanaged resources used by the MarshalByValueComponent and optionally releases the managed resources.

(Odziedziczone po MarshalByValueComponent)
EndInit()

Zamyka inicjalizację DataTable , która jest używana w formularzu lub używana przez inny składnik.Ends the initialization of a DataTable that is used on a form or used by another component. Inicjalizacja występuje w czasie wykonywania.The initialization occurs at run time.

EndLoadData()

Włącza powiadomienia, konserwację indeksu i ograniczenia po załadowaniu danych.Turns on notifications, index maintenance, and constraints after loading data.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
GetChanges()

Pobiera kopię DataTable zawierającą wszystkie zmiany dokonane od momentu załadowania lub AcceptChanges() ostatniego wywołania.Gets a copy of the DataTable that contains all changes made to it since it was loaded or AcceptChanges() was last called.

GetChanges(DataRowState)

Pobiera kopię DataTable zawierającą wszystkie zmiany wprowadzone do niego od momentu ostatniego załadowania lub od momentu AcceptChanges() wywołania, przefiltrowany DataRowStateprzez.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)

Ta metoda zwraca XmlSchemaSet wystąpienie zawierające Web Services Description Language (WSDL) DataTable opisujące usługi sieci Web.This method returns an XmlSchemaSet instance containing the Web Services Description Language (WSDL) that describes the DataTable for Web Services.

GetErrors()

Pobiera tablicę DataRow obiektów, które zawierają błędy.Gets an array of DataRow objects that contain errors.

GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetObjectData(SerializationInfo, StreamingContext)

Wypełnia obiekt informacji serializacji danymi wymaganymi do serializacji DataTable.Populates a serialization information object with the data needed to serialize the DataTable.

GetRowType()

Pobiera typ wiersza.Gets the row type.

GetSchema()

Aby uzyskać opis tego elementu członkowskiego, GetSchema()Zobacz.For a description of this member, see GetSchema().

GetService(Type)

Pobiera realizatora IServiceProvider.Gets the implementer of the IServiceProvider.

(Odziedziczone po MarshalByValueComponent)
GetType()

Type Pobiera bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
ImportRow(DataRow)

DataRow KopiujeDataTabledo i zachowuje wszystkie ustawienia właściwości, a także pierwotną i bieżącą wartość.Copies a DataRow into a DataTable, preserving any property settings, as well as original and current values.

Load(IDataReader)

Wypełnia wartości DataTable wartościami ze źródła danych przy użyciu dostarczonego IDataReaderelementu.Fills a DataTable with values from a data source using the supplied IDataReader. Jeśli zawiera DataTable już wiersze, dane przychodzące ze źródła danych zostaną scalone z istniejącymi wierszami.If the DataTable already contains rows, the incoming data from the data source is merged with the existing rows.

Load(IDataReader, LoadOption)

Wypełnia wartości DataTable wartościami ze źródła danych przy użyciu dostarczonego IDataReaderelementu.Fills a DataTable with values from a data source using the supplied IDataReader. Jeśli zawiera loadOption już wiersze, dane przychodzące ze źródła danych zostaną scalone z istniejącymi wierszami zgodnie z wartością parametru. DataTableIf 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)

Wypełnia wartości wartościami ze źródła danych za pomocą podanego IDataReader delegata obsługi błędu. DataTableFills a DataTable with values from a data source using the supplied IDataReader using an error-handling delegate.

LoadDataRow(Object[], Boolean)

Znajduje i aktualizuje określony wiersz.Finds and updates a specific row. Jeśli nie zostanie znaleziony pasujący wiersz, zostanie utworzony nowy wiersz przy użyciu podanej wartości.If no matching row is found, a new row is created using the given values.

LoadDataRow(Object[], LoadOption)

Znajduje i aktualizuje określony wiersz.Finds and updates a specific row. Jeśli nie zostanie znaleziony pasujący wiersz, zostanie utworzony nowy wiersz przy użyciu podanej wartości.If no matching row is found, a new row is created using the given values.

MemberwiseClone()

Tworzy skróconą kopię bieżącego Objectelementu.Creates a shallow copy of the current Object.

(Odziedziczone po Object)
Merge(DataTable)

Scal określony DataTable z bieżącym DataTable.Merge the specified DataTable with the current DataTable.

Merge(DataTable, Boolean)

Scal określony DataTable z bieżącym DataTable, wskazując, czy zachować zmiany w bieżącym DataTable.Merge the specified DataTable with the current DataTable, indicating whether to preserve changes in the current DataTable.

Merge(DataTable, Boolean, MissingSchemaAction)

Scal określony DataTable z bieżącym DataTable, wskazując, czy zachować zmiany i jak obsługiwać brakujące schematy w bieżącym DataTable.Merge the specified DataTable with the current DataTable, indicating whether to preserve changes and how to handle missing schema in the current DataTable.

NewRow()

Tworzy nowy DataRow z tym samym schematem co tabela.Creates a new DataRow with the same schema as the table.

NewRowArray(Int32)

Zwraca tablicę DataRow.Returns an array of DataRow.

NewRowFromBuilder(DataRowBuilder)

Tworzy nowy wiersz na podstawie istniejącego wiersza.Creates a new row from an existing row.

OnColumnChanged(DataColumnChangeEventArgs)

ColumnChanged Podnosi zdarzenie.Raises the ColumnChanged event.

OnColumnChanging(DataColumnChangeEventArgs)

ColumnChanging Podnosi zdarzenie.Raises the ColumnChanging event.

OnPropertyChanging(PropertyChangedEventArgs)

PropertyChanged Podnosi zdarzenie.Raises the PropertyChanged event.

OnRemoveColumn(DataColumn)

DataTable PowiadamiaDataColumn , że jest usuwany.Notifies the DataTable that a DataColumn is being removed.

OnRowChanged(DataRowChangeEventArgs)

RowChanged Podnosi zdarzenie.Raises the RowChanged event.

OnRowChanging(DataRowChangeEventArgs)

RowChanging Podnosi zdarzenie.Raises the RowChanging event.

OnRowDeleted(DataRowChangeEventArgs)

RowDeleted Podnosi zdarzenie.Raises the RowDeleted event.

OnRowDeleting(DataRowChangeEventArgs)

RowDeleting Podnosi zdarzenie.Raises the RowDeleting event.

OnTableCleared(DataTableClearEventArgs)

TableCleared Podnosi zdarzenie.Raises the TableCleared event.

OnTableClearing(DataTableClearEventArgs)

TableClearing Podnosi zdarzenie.Raises the TableClearing event.

OnTableNewRow(DataTableNewRowEventArgs)

TableNewRow Podnosi zdarzenie.Raises the TableNewRow event.

ReadXml(Stream)

Odczytuje schemat XML i dane do DataTable przy użyciu określonego Streamelementu.Reads XML schema and data into the DataTable using the specified Stream.

ReadXml(String)

Odczytuje schemat XML i dane do DataTable z określonego pliku.Reads XML schema and data into the DataTable from the specified file.

ReadXml(TextReader)

Odczytuje schemat XML i dane do DataTable przy użyciu określonego TextReaderelementu.Reads XML schema and data into the DataTable using the specified TextReader.

ReadXml(XmlReader)

Odczytuje schemat XML i dane do DataTable przy użyciu określonego XmlReaderelementu.Reads XML Schema and Data into the DataTable using the specified XmlReader.

ReadXmlSchema(Stream)

Odczytuje schemat XML do DataTable przy użyciu określonego strumienia.Reads an XML schema into the DataTable using the specified stream.

ReadXmlSchema(String)

Odczytuje schemat XML do DataTable określonego pliku.Reads an XML schema into the DataTable from the specified file.

ReadXmlSchema(TextReader)

Odczytuje schemat XML do DataTable użycia określonego. TextReaderReads an XML schema into the DataTable using the specified TextReader.

ReadXmlSchema(XmlReader)

Odczytuje schemat XML do DataTable użycia określonego. XmlReaderReads an XML schema into the DataTable using the specified XmlReader.

ReadXmlSerializable(XmlReader)

Odczytuje ze strumienia XML.Reads from an XML stream.

RejectChanges()

Wycofuje wszystkie zmiany wprowadzone w tabeli od czasu ich załadowania lub ostatniego AcceptChanges() wywołania.Rolls back all changes that have been made to the table since it was loaded, or the last time AcceptChanges() was called.

Reset()

Resetuje DataTable do stanu pierwotnego.Resets the DataTable to its original state. Wartość Zresetuj powoduje usunięcie wszystkich danych, indeksów, relacji i kolumn tabeli.Reset removes all data, indexes, relations, and columns of the table. Jeśli zestaw danych zawiera element DataTable, tabela będzie nadal częścią zestawu danych po zresetowaniu tabeli.If a DataSet includes a DataTable, the table will still be part of the DataSet after the table is reset.

Select()

Pobiera tablicę wszystkich DataRow obiektów.Gets an array of all DataRow objects.

Select(String)

Pobiera tablicę wszystkich DataRow obiektów, które pasują do kryteriów filtrowania.Gets an array of all DataRow objects that match the filter criteria.

Select(String, String)

Pobiera tablicę wszystkich DataRow obiektów, które pasują do kryteriów filtrowania, w określonej kolejności sortowania.Gets an array of all DataRow objects that match the filter criteria, in the specified sort order.

Select(String, String, DataViewRowState)

Pobiera tablicę wszystkich DataRow obiektów, które pasują do filtru w kolejności sortowania zgodnego z określonym stanem.Gets an array of all DataRow objects that match the filter in the order of the sort that match the specified state.

ToString()

TableName Pobiera i DisplayExpression, jeśli jeden z nich jest ciągiem połączonym.Gets the TableName and DisplayExpression, if there is one as a concatenated string.

WriteXml(Stream)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonej Streamwartości.Writes the current contents of the DataTable as XML using the specified Stream.

WriteXml(Stream, Boolean)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonej Streamwartości.Writes the current contents of the DataTable as XML using the specified Stream. Aby zapisać dane dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(Stream, XmlWriteMode)

Zapisuje bieżące dane i opcjonalnie schemat dla DataTable określonego pliku przy użyciu określonego. XmlWriteModeWrites the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(Stream, XmlWriteMode, Boolean)

Zapisuje bieżące dane i opcjonalnie schemat dla DataTable określonego pliku przy użyciu określonego. XmlWriteModeWrites the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema. Aby zapisać dane dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonego pliku.Writes the current contents of the DataTable as XML using the specified file.

WriteXml(String, Boolean)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonego pliku.Writes the current contents of the DataTable as XML using the specified file. Aby zapisać dane dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(String, XmlWriteMode)

Zapisuje bieżące dane i opcjonalnie schemat DataTable przy użyciu określonego pliku i. XmlWriteModeWrites the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(String, XmlWriteMode, Boolean)

Zapisuje bieżące dane i opcjonalnie schemat DataTable przy użyciu określonego pliku i. XmlWriteModeWrites the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema. Aby zapisać dane dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonej TextWriterwartości.Writes the current contents of the DataTable as XML using the specified TextWriter.

WriteXml(TextWriter, Boolean)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonej TextWriterwartości.Writes the current contents of the DataTable as XML using the specified TextWriter. Aby zapisać dane dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(TextWriter, XmlWriteMode)

Zapisuje bieżące dane i opcjonalnie schemat DataTable przy użyciu określonych TextWriter i XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(TextWriter, XmlWriteMode, Boolean)

Zapisuje bieżące dane i opcjonalnie schemat DataTable przy użyciu określonych TextWriter i XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema. Aby zapisać dane dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXml(XmlWriter)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonej XmlWriterwartości.Writes the current contents of the DataTable as XML using the specified XmlWriter.

WriteXml(XmlWriter, Boolean)

Zapisuje bieżącą zawartość DataTable pliku XML przy użyciu określonej XmlWriterwartości.Writes the current contents of the DataTable as XML using the specified XmlWriter.

WriteXml(XmlWriter, XmlWriteMode)

Zapisuje bieżące dane i opcjonalnie schemat DataTable przy użyciu określonych XmlWriter i XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema.

WriteXml(XmlWriter, XmlWriteMode, Boolean)

Zapisuje bieżące dane i opcjonalnie schemat DataTable przy użyciu określonych XmlWriter i XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Aby zapisać schemat, ustaw wartość mode parametru na. WriteSchemaTo write the schema, set the value for the mode parameter to WriteSchema. Aby zapisać dane dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the data for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(Stream)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego strumienia.Writes the current data structure of the DataTable as an XML schema to the specified stream.

WriteXmlSchema(Stream, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego strumienia.Writes the current data structure of the DataTable as an XML schema to the specified stream. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(String)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego pliku.Writes the current data structure of the DataTable as an XML schema to the specified file.

WriteXmlSchema(String, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML do określonego pliku.Writes the current data structure of the DataTable as an XML schema to the specified file. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(TextWriter)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego TextWriter.Writes the current data structure of the DataTable as an XML schema using the specified TextWriter.

WriteXmlSchema(TextWriter, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego TextWriter.Writes the current data structure of the DataTable as an XML schema using the specified TextWriter. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

WriteXmlSchema(XmlWriter)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego XmlWriter.Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter.

WriteXmlSchema(XmlWriter, Boolean)

Zapisuje bieżącą strukturę DataTable danych jako schemat XML przy użyciu określonego XmlWriter.Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter. Aby zapisać schemat dla tabeli i wszystkich jej elementów podrzędnych, ustaw writeHierarchy parametr na. trueTo save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

Zdarzenia

ColumnChanged

Występuje po zmianie wartości dla określonego DataColumn DataRoww.Occurs after a value has been changed for the specified DataColumn in a DataRow.

ColumnChanging

Występuje, gdy wartość jest zmieniana dla określonego DataColumn DataRoww.Occurs when a value is being changed for the specified DataColumn in a DataRow.

Disposed

Dodaje procedurę obsługi zdarzeń do nasłuchiwania Disposed na zdarzeniu w składniku.Adds an event handler to listen to the Disposed event on the component.

(Odziedziczone po MarshalByValueComponent)
Initialized

Występuje po DataTable zainicjowaniu.Occurs after the DataTable is initialized.

RowChanged

Występuje po pomyślnym zmianie elementu DataRow .Occurs after a DataRow has been changed successfully.

RowChanging

Występuje, DataRow gdy zmienia się.Occurs when a DataRow is changing.

RowDeleted

Występuje po usunięciu wiersza w tabeli.Occurs after a row in the table has been deleted.

RowDeleting

Występuje, zanim wiersz w tabeli zostanie usunięty.Occurs before a row in the table is about to be deleted.

TableCleared

Występuje po DataTable wyczyszczeniu.Occurs after a DataTable is cleared.

TableClearing

Występuje po DataTable wyczyszczeniu.Occurs when a DataTable is cleared.

TableNewRow

Występuje po wstawieniu nowej DataRow .Occurs when a new DataRow is inserted.

Jawne implementacje interfejsu

IListSource.ContainsListCollection

Aby uzyskać opis tego elementu członkowskiego, ContainsListCollectionZobacz.For a description of this member, see ContainsListCollection.

IListSource.GetList()

Aby uzyskać opis tego elementu członkowskiego, GetList()Zobacz.For a description of this member, see GetList().

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Wypełnia obiekt informacji serializacji danymi wymaganymi do serializacji DataTable.Populates a serialization information object with the data needed to serialize the DataTable.

IXmlSerializable.GetSchema()

Aby uzyskać opis tego elementu członkowskiego, GetSchema()Zobacz.For a description of this member, see GetSchema().

IXmlSerializable.ReadXml(XmlReader)

Aby uzyskać opis tego elementu członkowskiego, ReadXml(XmlReader)Zobacz.For a description of this member, see ReadXml(XmlReader).

IXmlSerializable.WriteXml(XmlWriter)

Aby uzyskać opis tego elementu członkowskiego, WriteXml(XmlWriter)Zobacz.For a description of this member, see WriteXml(XmlWriter).

Metody rozszerzania

AsDataView(DataTable)

Tworzy i zwraca obiekt obsługujący DataView LINQ.Creates and returns a LINQ-enabled DataView object.

AsEnumerable(DataTable)

Zwraca obiekt, gdzie parametr T generyczny to DataRow. IEnumerable<T>Returns an IEnumerable<T> object, where the generic parameter T is DataRow. Ten obiekt może być używany w LINQLINQ zapytaniu wyrażenia lub metody.This object can be used in a LINQLINQ expression or method query.

Dotyczy

Bezpieczeństwo wątkowe

Ten typ jest bezpieczny dla wielowątkowych operacji odczytu.This type is safe for multithreaded read operations. Należy zsynchronizować wszystkie operacje zapisu.You must synchronize any write operations.

Zobacz też