DataTable DataTable DataTable DataTable Class

Definition

Stellt eine Tabelle mit Daten im Arbeitsspeicher dar.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
Vererbung
Abgeleitet
Attribute
Implementiert

Beispiele

Das folgende Beispiel erstellt zwei DataTable Objekte und eines DataRelation -Objekt und fügt die neuen Objekte auf einer DataSet.The following example creates two DataTable objects and one DataRelation object, and adds the new objects to a DataSet. Die Tabellen werden dann angezeigt, einem DataGridView Steuerelement.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
 

Dieses Beispiel zeigt, wie eine "DataTable" mit bestimmten Schemadefinitionen manuell zu erstellen:This sample demonstrates how to create a DataTable manually with specific schema definitions:

  • Erstellen Sie mehrere DataTables und definieren Sie die ursprünglichen Spalten.Create multiple DataTables and define the initial columns.

  • Erstellen Sie die tabelleneinschränkungen.Create the table constraints.

  • Fügen Sie die Werte, und zeigen Sie die Tabellen.Insert the values and display the tables.

  • Erstellen Sie die Spalten für Ausdrücke, und zeigen Sie die Tabellen.Create the expression columns and display the tables.

C# und Visual Basic-Projekte mit diesem Codebeispiel finden Sie unter Codebeispiele für Entwickler.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

Hinweise

Die DataTable ist ein zentrale Objekt in der Bibliothek für ADO.NET.The DataTable is a central object in the ADO.NET library. Anderen Objekten, die DataTable enthalten die DataSet und DataView.Other objects that use the DataTable include the DataSet and the DataView.

Beim Zugriff auf DataTable Objekte, beachten Sie, dass sie bedingt Groß-/Kleinschreibung beachtet werden.When accessing DataTable objects, note that they are conditionally case sensitive. Angenommen, ein DataTable "Mydatatable" den Namen und eine weitere "Mydatatable" benannt ist, wird in eine Zeichenfolge, die zum Suchen nach einer der Tabellen verwendet die Groß-/ Kleinschreibung.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. Allerdings wird Wenn "Mydatatable" vorhanden ist, und "Mydatatable", nicht aber, die zu suchende Zeichenfolge Groß-/Kleinschreibung betrachtet.However, if "mydatatable" exists and "Mydatatable" does not, the search string is regarded as case insensitive. Ein DataSet können enthalten zwei DataTable Objekte mit dem gleichen TableName Eigenschaftswert, aber unterschiedliche Namespace Eigenschaftswerte.A DataSet can contain two DataTable objects that have the same TableName property value but different Namespace property values. Weitere Informationen zum Arbeiten mit DataTable anzuzeigen, Erstellen einer "DataTable".For more information about working with DataTable objects, see Creating a DataTable.

Bei der Erstellung einer DataTable programmgesteuert, müssen Sie zuerst ihr Schema definieren, durch das Hinzufügen DataColumn Objekte die DataColumnCollection (Zugriff erfolgt über die Columns Eigenschaft).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). Weitere Informationen zum Hinzufügen von DataColumn Objekten finden Sie Hinzufügen von Spalten zu einer DataTable.For more information about adding DataColumn objects, see Adding Columns to a DataTable.

Zum Hinzufügen von Zeilen zu einer DataTable, müssen Sie zunächst mithilfe der NewRow Methode, um ein neues zurückzugeben DataRow Objekt.To add rows to a DataTable, you must first use the NewRow method to return a new DataRow object. Die NewRow Methode gibt eine Zeile mit dem Schema der der DataTable, von der Tabelle definierten DataColumnCollection.The NewRow method returns a row with the schema of the DataTable, as it is defined by the table's DataColumnCollection. Die maximale Anzahl von Zeilen, die eine DataTable können Speicher ist 16.777.216.The maximum number of rows that a DataTable can store is 16,777,216. Weitere Informationen finden Sie unter Hinzufügen von Daten zu einer DataTable.For more information, see Adding Data to a DataTable.

Die DataTable enthält auch eine Auflistung von Constraint Objekte, die verwendet werden können, um die Integrität der Daten sicherzustellen.The DataTable also contains a collection of Constraint objects that can be used to ensure the integrity of the data. Weitere Informationen finden Sie unter DataTable-Einschränkungen.For more information, see DataTable Constraints.

Es gibt viele DataTable Ereignisse, die verwendet werden können, um zu bestimmen, wann Änderungen an einer Tabelle vorgenommen werden.There are many DataTable events that can be used to determine when changes are made to a table. Dazu gehören RowChanged, RowChanging, RowDeleting und RowDeleted.These include RowChanged, RowChanging, RowDeleting, and RowDeleted. Weitere Informationen zu den Ereignissen, die mit einem DataTable, finden Sie unter Behandeln von DataTable-Ereignissen.For more information about the events that can be used with a DataTable, see Handling DataTable Events.

Wenn eine Instanz des DataTable wird erstellt, einige Eigenschaften werden von der Lese-/Schreibzugriff auf die ursprünglichen Werte festgelegt.When an instance of DataTable is created, some of the read/write properties are set to initial values. Eine Liste dieser Werte finden Sie in der DataTable.DataTable Konstruktor Thema.For a list of these values, see the DataTable.DataTable constructor topic.

Hinweis

Die DataSet und DataTable Objekte erben von MarshalByValueComponent, und unterstützen die ISerializable -Schnittstelle für das .NET Framework-Remoting.The DataSet and DataTable objects inherit from MarshalByValueComponent, and support the ISerializable interface for .NET Framework remoting. Dies sind die einzigen ADO.NET-Objekte, die für .NET Framework-Remoting verwendet werden können.These are the only ADO.NET objects that you can use for .NET Framework remoting.

Konstruktoren

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

Initialisiert eine neue Instanz der DataTable-Klasse ohne Argumente.Initializes a new instance of the DataTable class with no arguments.

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

Initialisiert eine neue Instanz der DataTable-Klasse mit der SerializationInfo und dem StreamingContext.Initializes a new instance of the DataTable class with the SerializationInfo and the StreamingContext.

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

Initialisiert eine neue Instanz der DataTable-Klasse mit dem angegebenen Tabellennamen.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)

Initialisiert eine neue Instanz der DataTable-Klasse mit dem angegebenen Tabellennamen und Namespace.Initializes a new instance of the DataTable class using the specified table name and namespace.

Felder

fInitInProgress fInitInProgress fInitInProgress fInitInProgress

Überprüft, ob die Initialisierung gegenwärtig ausgeführt wird.Checks whether initialization is in progress. Die Initialisierung erfolgt zur Laufzeit.The initialization occurs at run time.

Eigenschaften

CaseSensitive CaseSensitive CaseSensitive CaseSensitive

Gibt an, ob Vergleiche zwischen Zeichenfolgen in der Tabelle unter Berücksichtigung der Groß- und Kleinschreibung ausgeführt werden.Indicates whether string comparisons within the table are case-sensitive.

ChildRelations ChildRelations ChildRelations ChildRelations

Ruft die Auflistung untergeordneter Beziehungen für diese DataTable ab.Gets the collection of child relations for this DataTable.

Columns Columns Columns Columns

Ruft die Auflistung der Spalten ab, die zu dieser Tabelle gehören.Gets the collection of columns that belong to this table.

Constraints Constraints Constraints Constraints

Ruft die Auflistung der Einschränkungen ab, die von dieser Tabelle verwaltet werden.Gets the collection of constraints maintained by this table.

Container Container Container Container

Ruft den Container für die Komponente ab.Gets the container for the component.

(Inherited from MarshalByValueComponent)
DataSet DataSet DataSet DataSet

Ruft das DataSet ab, zu dem diese Tabelle gehört.Gets the DataSet to which this table belongs.

DefaultView DefaultView DefaultView DefaultView

Ruft eine benutzerdefinierte Sicht der Tabelle ab, wobei es sich um eine gefilterte Sicht oder eine Cursorposition handeln kann.Gets a customized view of the table that may include a filtered view, or a cursor position.

DesignMode DesignMode DesignMode DesignMode

Ruft einen Wert ab, der angibt, ob sich die Komponente gegenwärtig im Entwurfsmodus befindet.Gets a value indicating whether the component is currently in design mode.

(Inherited from MarshalByValueComponent)
DisplayExpression DisplayExpression DisplayExpression DisplayExpression

Ruft den Ausdruck ab, der einen Wert für die Darstellung dieser Tabelle auf der Benutzeroberfläche zurückgibt, oder legt diesen fest.Gets or sets the expression that returns a value used to represent this table in the user interface. Mit der DisplayExpression-Eigenschaft können Sie den Namen dieser Tabelle auf einer Benutzeroberfläche anzeigen.The DisplayExpression property lets you display the name of this table in a user interface.

Events Events Events Events

Ruft die Liste der an diese Komponente angefügten Ereignishandler ab.Gets the list of event handlers that are attached to this component.

(Inherited from MarshalByValueComponent)
ExtendedProperties ExtendedProperties ExtendedProperties ExtendedProperties

Ruft die Auflistung benutzerdefinierter Benutzerinformationen ab.Gets the collection of customized user information.

HasErrors HasErrors HasErrors HasErrors

Ruft einen Wert ab, der angibt, ob in einer Zeile in einer Tabelle des DataSet, zu dem die Tabelle gehört, Fehler aufgetreten sind.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

Ruft einen Wert ab, der angibt, ob die DataTable initialisiert wurde.Gets a value that indicates whether the DataTable is initialized.

Locale Locale Locale Locale

Ruft die Gebietsschemainformationen ab, die für den Vergleich von Zeichenfolgen in der Tabelle verwendet werden, oder legt diese fest.Gets or sets the locale information used to compare strings within the table.

MinimumCapacity MinimumCapacity MinimumCapacity MinimumCapacity

Ruft die Ausgangsgröße für diese Tabelle ab oder legt diese fest.Gets or sets the initial starting size for this table.

Namespace Namespace Namespace Namespace

Ruft den Namespace für die XML-Darstellung der in der DataTable gespeicherten Daten ab oder legt diesen fest.Gets or sets the namespace for the XML representation of the data stored in the DataTable.

ParentRelations ParentRelations ParentRelations ParentRelations

Ruft die Auflistung übergeordneter Beziehungen für diese DataTable ab.Gets the collection of parent relations for this DataTable.

Prefix Prefix Prefix Prefix

Ruft den Namespace für die XML-Darstellung der in der DataTable gespeicherten Daten ab oder legt diesen fest.Gets or sets the namespace for the XML representation of the data stored in the DataTable.

PrimaryKey PrimaryKey PrimaryKey PrimaryKey

Ruft ein Array von Spalten ab, die als Primärschlüssel für die Datentabelle verwendet werden, oder legt dieses fest.Gets or sets an array of columns that function as primary keys for the data table.

RemotingFormat RemotingFormat RemotingFormat RemotingFormat

Ruft das Serialisierungsformat ab oder legt dieses fest.Gets or sets the serialization format.

Rows Rows Rows Rows

Ruft die Auflistung der Zeilen ab, die zu dieser Tabelle gehören.Gets the collection of rows that belong to this table.

Site Site Site Site

Ruft eine ISite für den DataTable ab oder legt diese fest.Gets or sets an ISite for the DataTable.

TableName TableName TableName TableName

Ruft den Namen der DataTable ab oder legt diesen fest.Gets or sets the name of the DataTable.

Methoden

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

Übernimmt alle Änderungen, die an dieser Tabelle seit dem letzten Aufruf von AcceptChanges() vorgenommen wurden.Commits all the changes made to this table since the last time AcceptChanges() was called.

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

Beginnt die Initialisierung einer DataTable, die in einem Formular oder von einer anderen Komponente verwendet wird.Begins the initialization of a DataTable that is used on a form or used by another component. Die Initialisierung erfolgt zur Laufzeit.The initialization occurs at run time.

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

Deaktiviert während des Ladens von Daten Benachrichtigungen, Indexverwaltung und Einschränkungen.Turns off notifications, index maintenance, and constraints while loading data.

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

Löscht alle Daten aus der DataTable.Clears the DataTable of all data.

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

Klont die Struktur der DataTable, einschließlich aller Schemas und Einschränkungen der 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)

Berechnet den angegebenen Ausdruck für die aktuellen Zeilen, die die Filterkriterien erfüllen.Computes the given expression on the current rows that pass the filter criteria.

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

Kopiert die Struktur und die Daten für diese DataTable.Copies both the structure and data for this DataTable.

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

Gibt einen DataTableReader zurück, der den Daten innerhalb dieser DataTable entspricht.Returns a DataTableReader corresponding to the data within this DataTable.

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

Erstellt eine neue Instanz von DataTable.Creates a new instance of DataTable.

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

Gibt alle vom MarshalByValueComponent verwendeten Ressourcen frei.Releases all resources used by the MarshalByValueComponent.

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

Gibt die von MarshalByValueComponent verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the MarshalByValueComponent and optionally releases the managed resources.

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

Beendet die Initialisierung einer DataTable, die in einem Formular oder von einer anderen Komponente verwendet wird.Ends the initialization of a DataTable that is used on a form or used by another component. Die Initialisierung erfolgt zur Laufzeit.The initialization occurs at run time.

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

Aktiviert nach dem Laden von Daten Benachrichtigungen, Indexverwaltung und Einschränkungen.Turns on notifications, index maintenance, and constraints after loading data.

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

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

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

Ruft eine Kopie der DataTable ab, die alle seit dem letzten Laden oder seit dem letzten Aufruf von AcceptChanges() vorgenommenen Änderungen enthält.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)

Ruft eine Kopie der DataTable ab, die alle seit dem letzten Laden oder seit dem letzten Aufruf von AcceptChanges() vorgenommenen und durch DataRowState gefilterten Änderungen enthält.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)

Diese Methode gibt eine XmlSchemaSet-Instanz mit der WSDL (Web Services Description Language) zurück, die die DataTable für Webdienste beschreibt.This method returns an XmlSchemaSet instance containing the Web Services Description Language (WSDL) that describes the DataTable for Web Services.

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

Ruft ein Array von DataRow-Objekten ab, die Fehler enthalten.Gets an array of DataRow objects that contain errors.

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

Fungiert als Standardhashfunktion.Serves as the default hash function.

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

Füllt ein Serialisierungsinformationsobjekt mit den Daten auf, die zum Serialisieren des DataTable erforderlich sind.Populates a serialization information object with the data needed to serialize the DataTable.

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

Ruft den Zeilentyp ab.Gets the row type.

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

Eine Beschreibung dieses Members finden Sie unter GetSchema().For a description of this member, see GetSchema().

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

Ruft die Implementierung von IServiceProvider ab.Gets the implementer of the IServiceProvider.

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

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

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

Kopiert eine DataRow in eine DataTable, wobei alle Eigenschafteneinstellungen sowie die ursprünglichen und die aktuellen Werte beibehalten werden.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)

Füllt eine DataTable mit Werten aus einer Datenquelle, die den angegebenen IDataReader verwendet.Fills a DataTable with values from a data source using the supplied IDataReader. Wenn die DataTable bereits Zeilen enthält, werden die eingehenden Daten aus der Datenquelle mit den vorhandenen Zeilen zusammengeführt.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)

Füllt eine DataTable mit Werten aus einer Datenquelle, die den angegebenen IDataReader verwendet.Fills a DataTable with values from a data source using the supplied IDataReader. Wenn die DataTable bereits Zeilen enthält, werden die eingehenden Daten gemäß dem Wert des loadOption-Parameters aus der Datenquelle mit den vorhandenen Zeilen zusammengeführt.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)

Füllt eine DataTable mit Werten aus einer Datenquelle mit dem bereitgestellten IDataReader und unter Verwendung eines Fehlerbehandlungsdelegaten.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)

Sucht eine bestimmte Zeile und aktualisiert diese.Finds and updates a specific row. Wenn keine übereinstimmende Zeile gefunden werden kann, wird eine neue Zeile mit den angegebenen Werten erstellt.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)

Sucht eine bestimmte Zeile und aktualisiert diese.Finds and updates a specific row. Wenn keine übereinstimmende Zeile gefunden werden kann, wird eine neue Zeile mit den angegebenen Werten erstellt.If no matching row is found, a new row is created using the given values.

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

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

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

Führen Sie die angegebene DataTable mit der aktuellen DataTable zusammen.Merge the specified DataTable with the current DataTable.

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

Führen Sie die angegebene DataTable mit der aktuellen DataTable zusammen, und geben Sie an, ob die Änderungen in der aktuellen DataTable beibehalten werden sollen.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)

Führen Sie die angegebene DataTable mit der aktuellen DataTable zusammen, und geben Sie an, ob die Änderungen in der aktuellen DataTable beibehalten werden sollen und wie das fehlende Schema behandelt werden soll.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()

Erstellt eine neue DataRow mit dem Schema der Tabelle.Creates a new DataRow with the same schema as the table.

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

Gibt ein Array von DataRow zurück.Returns an array of DataRow.

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

Erstellt eine neue Zeile aus einer vorhandenen Zeile.Creates a new row from an existing row.

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

Löst das ColumnChanged-Ereignis aus.Raises the ColumnChanged event.

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

Löst das ColumnChanging-Ereignis aus.Raises the ColumnChanging event.

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

Löst das PropertyChanged-Ereignis aus.Raises the PropertyChanged event.

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

Benachrichtigt die DataTable, dass eine DataColumn entfernt wird.Notifies the DataTable that a DataColumn is being removed.

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

Löst das RowChanged-Ereignis aus.Raises the RowChanged event.

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

Löst das RowChanging-Ereignis aus.Raises the RowChanging event.

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

Löst das RowDeleted-Ereignis aus.Raises the RowDeleted event.

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

Löst das RowDeleting-Ereignis aus.Raises the RowDeleting event.

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

Löst das TableCleared-Ereignis aus.Raises the TableCleared event.

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

Löst das TableClearing-Ereignis aus.Raises the TableClearing event.

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

Löst das TableNewRow-Ereignis aus.Raises the TableNewRow event.

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

Liest mit dem angegebenen DataTable das XML-Schema und die XML-Daten in die Stream.Reads XML schema and data into the DataTable using the specified Stream.

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

Liest das XML-Schema und die XML-Daten in die DataTable aus der angegebenen Datei.Reads XML schema and data into the DataTable from the specified file.

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

Liest mit dem angegebenen DataTable das XML-Schema und die XML-Daten in die TextReader.Reads XML schema and data into the DataTable using the specified TextReader.

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

Liest das XML-Schema und die XML-Daten mit dem angegebenen DataTable in die XmlReader.Reads XML Schema and Data into the DataTable using the specified XmlReader.

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

Liest ein XML-Schema mit dem angegebenen Stream in die DataTable.Reads an XML schema into the DataTable using the specified stream.

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

Liest ein XML-Schema aus der angegebenen Datei in die DataTable.Reads an XML schema into the DataTable from the specified file.

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

Liest ein XML-Schema mit dem angegebenen DataTable in die TextReader.Reads an XML schema into the DataTable using the specified TextReader.

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

Liest ein XML-Schema mit dem angegebenen DataTable in die XmlReader.Reads an XML schema into the DataTable using the specified XmlReader.

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

Liest aus einem XML-Stream.Reads from an XML stream.

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

Führt einen Rollback aller Änderungen durch, die an der Tabelle seit dem Laden oder seit dem letzten Aufruf von AcceptChanges() vorgenommen wurden.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()

Setzt die DataTable auf den ursprünglichen Zustand zurück.Resets the DataTable to its original state. Zurücksetzen entfernt alle Daten, Indizes, Beziehungen und Spalten der Tabelle.Reset removes all data, indexes, relations, and columns of the table. Wenn ein DataSet ein DataTable umfasst, ist die Tabelle noch ein Teil des DataSet, nachdem die Tabelle zurückgesetzt ist.If a DataSet includes a DataTable, the table will still be part of the DataSet after the table is reset.

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

Ruft ein Array aller DataRow-Objekte ab.Gets an array of all DataRow objects.

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

Ruft ein Array aller DataRow-Objekte ab, die den Filterkriterien entsprechen.Gets an array of all DataRow objects that match the filter criteria.

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

Ruft ein Array aller DataRow-Objekte, die die Filterkriterien erfüllen, in der angegebenen Sortierreihenfolge ab.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)

Ruft ein Array aller DataRow-Objekte ab, die die Filterkriterien in der Sortierreihenfolge erfüllen und zum angegebenen Zustand passen.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()

Ruft den TableName und den DisplayExpression, sofern vorhanden, als verkettete Zeichenfolge ab.Gets the TableName and DisplayExpression, if there is one as a concatenated string.

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

Schreibt den aktuellen Inhalt des DataTable mithilfe des angegebenen Stream im XML-Format.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)

Schreibt den aktuellen Inhalt des DataTable mithilfe des angegebenen Stream im XML-Format.Writes the current contents of the DataTable as XML using the specified Stream. Legen Sie zum Speichern der Daten für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt im angegebenen DataTable die aktuellen Daten und bei Bedarf das Schema für die XmlWriteMode in die angegebene Datei.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.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)

Schreibt im angegebenen DataTable die aktuellen Daten und bei Bedarf das Schema für die XmlWriteMode in die angegebene Datei.Writes the current data, and optionally the schema, for the DataTable to the specified file using the specified XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.To write the schema, set the value for the mode parameter to WriteSchema. Legen Sie zum Speichern der Daten für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt den aktuellen Inhalt der DataTable als XML mit der angegebenen Datei.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)

Schreibt den aktuellen Inhalt der DataTable als XML mit der angegebenen Datei.Writes the current contents of the DataTable as XML using the specified file. Legen Sie zum Speichern der Daten für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt mit der angegebenen Datei und im angegebenen DataTable die aktuellen Daten und bei Bedarf das Schema für das XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.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)

Schreibt mit der angegebenen Datei und im angegebenen DataTable die aktuellen Daten und bei Bedarf das Schema für das XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified file and XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.To write the schema, set the value for the mode parameter to WriteSchema. Legen Sie zum Speichern der Daten für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt den aktuellen Inhalt des DataTable mithilfe des angegebenen TextWriter im XML-Format.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)

Schreibt den aktuellen Inhalt des DataTable mithilfe des angegebenen TextWriter im XML-Format.Writes the current contents of the DataTable as XML using the specified TextWriter. Legen Sie zum Speichern der Daten für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt mit dem angegebenen DataTable und im angegebenen TextWriter die aktuellen Daten und bei Bedarf das Schema für die XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.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)

Schreibt mit dem angegebenen DataTable und im angegebenen TextWriter die aktuellen Daten und bei Bedarf das Schema für die XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified TextWriter and XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.To write the schema, set the value for the mode parameter to WriteSchema. Legen Sie zum Speichern der Daten für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt den aktuellen Inhalt des DataTable mithilfe des angegebenen XmlWriter im XML-Format.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)

Schreibt den aktuellen Inhalt des DataTable mithilfe des angegebenen XmlWriter im XML-Format.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)

Schreibt mit dem angegebenen DataTable und im angegebenen XmlWriter die aktuellen Daten und bei Bedarf das Schema für die XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.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)

Schreibt mit dem angegebenen DataTable und im angegebenen XmlWriter die aktuellen Daten und bei Bedarf das Schema für die XmlWriteMode.Writes the current data, and optionally the schema, for the DataTable using the specified XmlWriter and XmlWriteMode. Um das Schema zu schreiben, legen Sie den Wert für den mode-Parameter auf WriteSchema fest.To write the schema, set the value for the mode parameter to WriteSchema. Legen Sie zum Speichern der Daten für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema in den angegebenen Stream.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema in den angegebenen Stream.Writes the current data structure of the DataTable as an XML schema to the specified stream. Legen Sie zum Speichern des Schemas für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema in die angegebene Datei.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema in die angegebene Datei.Writes the current data structure of the DataTable as an XML schema to the specified file. Legen Sie zum Speichern des Schemas für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema unter Verwendung des angegebenen TextWriter.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema unter Verwendung des angegebenen TextWriter.Writes the current data structure of the DataTable as an XML schema using the specified TextWriter. Legen Sie zum Speichern des Schemas für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema unter Verwendung des angegebenen XmlWriter.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)

Schreibt die aktuelle Datenstruktur der DataTable als XML-Schema unter Verwendung des angegebenen XmlWriter.Writes the current data structure of the DataTable as an XML schema using the specified XmlWriter. Legen Sie zum Speichern des Schemas für die Tabelle und ihre Nachfolgerelemente den writeHierarchy-Parameter auf true fest.To save the schema for the table and all its descendants, set the writeHierarchy parameter to true.

Ereignisse

ColumnChanged ColumnChanged ColumnChanged ColumnChanged

Tritt ein, nachdem ein Wert für die angegebene DataColumn in einer DataRow geändert wurde.Occurs after a value has been changed for the specified DataColumn in a DataRow.

ColumnChanging ColumnChanging ColumnChanging ColumnChanging

Tritt ein, wenn ein Wert für die angegebene DataColumn in einer DataRow geändert wird.Occurs when a value is being changed for the specified DataColumn in a DataRow.

Disposed Disposed Disposed Disposed

Fügt einen Ereignishandler hinzu, der das Disposed-Ereignis für die Komponente überwacht.Adds an event handler to listen to the Disposed event on the component.

(Inherited from MarshalByValueComponent)
Initialized Initialized Initialized Initialized

Tritt nach dem Initialisieren der DataTable auf.Occurs after the DataTable is initialized.

RowChanged RowChanged RowChanged RowChanged

Tritt auf, nachdem eine DataRow erfolgreich geändert wurde.Occurs after a DataRow has been changed successfully.

RowChanging RowChanging RowChanging RowChanging

Tritt ein, wenn eine DataRow geändert wird.Occurs when a DataRow is changing.

RowDeleted RowDeleted RowDeleted RowDeleted

Tritt ein, nachdem eine Zeile in der Tabelle gelöscht wurde.Occurs after a row in the table has been deleted.

RowDeleting RowDeleting RowDeleting RowDeleting

Tritt ein, bevor eine Zeile in der Tabelle gelöscht wird.Occurs before a row in the table is about to be deleted.

TableCleared TableCleared TableCleared TableCleared

Tritt ein, nachdem eine DataTable gelöscht wurde.Occurs after a DataTable is cleared.

TableClearing TableClearing TableClearing TableClearing

Tritt ein, wenn eine DataTable gelöscht wird.Occurs when a DataTable is cleared.

TableNewRow TableNewRow TableNewRow TableNewRow

Tritt ein, wenn eine neue DataRow eingefügt wird.Occurs when a new DataRow is inserted.

Explizite Schnittstellenimplementierungen

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

Eine Beschreibung dieses Members finden Sie unter ContainsListCollection.For a description of this member, see ContainsListCollection.

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

Eine Beschreibung dieses Members finden Sie unter 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)

Füllt ein Serialisierungsinformationsobjekt mit den Daten auf, die zum Serialisieren des DataTable erforderlich sind.Populates a serialization information object with the data needed to serialize the DataTable.

IXmlSerializable.GetSchema() IXmlSerializable.GetSchema() IXmlSerializable.GetSchema() IXmlSerializable.GetSchema()

Eine Beschreibung dieses Members finden Sie unter GetSchema().For a description of this member, see GetSchema().

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

Eine Beschreibung dieses Members finden Sie unter ReadXml(XmlReader).For a description of this member, see ReadXml(XmlReader).

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

Eine Beschreibung dieses Members finden Sie unter WriteXml(XmlWriter).For a description of this member, see WriteXml(XmlWriter).

Extension Methods

AsDataView(DataTable) AsDataView(DataTable) AsDataView(DataTable) AsDataView(DataTable)

Erstellt und gibt ein LINQ-aktiviertes DataView Objekt.Creates and returns a LINQ-enabled DataView object.

AsEnumerable(DataTable) AsEnumerable(DataTable) AsEnumerable(DataTable) AsEnumerable(DataTable)

Gibt eine IEnumerable<T> Objekt, in dem der generische Parameter T ist DataRow.Returns an IEnumerable<T> object, where the generic parameter T is DataRow. Dieses Objekt kann in einem LINQLINQ-Ausdruck oder einer Methodenabfrage verwendet werden.This object can be used in a LINQLINQ expression or method query.

Gilt für:

Threadsicherheit

Dieser Typ ist für schreibgeschützte Vorgänge mit mehreren Threads sicher.This type is safe for multithreaded read operations. Sie müssen die Schreibvorgänge synchronisieren.You must synchronize any write operations.

Siehe auch