Skip to main content
.NET Framework Class Library
DataTable..::.GetErrors Method

Gets an array of DataRow objects that contain errors.

Namespace: System.Data
Assembly: System.Data (in System.Data.dll)
Syntax
Public Function GetErrors As DataRow()
public DataRow[] GetErrors()
public:
array<DataRow^>^ GetErrors()
member GetErrors : unit -> DataRow[] 

Return Value

Type: array<System.Data..::.DataRow>[]()[]
An array of DataRow objects that have errors.
Remarks

Invoke GetErrors after invoking the DataSet class's GetChanges method. Also, be sure you do not invoke AcceptChanges on the DataTable until after you have resolved all errors, and have re-submitted the DataSet for updating.

Examples

The following example uses the GetErrors method to return an array of DataRow objects that have errors.


Private Sub PrintAllErrs(ByVal dataSet As DataSet)
    Dim rowsInError() As DataRow
    Dim table As DataTable  
    Dim i As Integer
    Dim column As DataColumn
    For Each table In dataSet.Tables
       ' Test if the table has errors. If not, skip it.
       If table.HasErrors Then
          ' Get an array of all rows with errors.
          rowsInError = table.GetErrors()
          ' Print the error of each column in each row.
          For i = 0 To rowsInError.GetUpperBound(0)
             For Each column In table.Columns
                Console.WriteLine(column.ColumnName, _
                rowsInError(i).GetColumnError(column))
             Next
             ' Clear the row errors
          rowsInError(i).ClearErrors
          Next i
       End If
    Next
End Sub


private void PrintAllErrs(DataSet dataSet)
{
    DataRow[] rowsInError; 

    foreach(DataTable table in dataSet.Tables)
    {
        // Test if the table has errors. If not, skip it.
        if(table.HasErrors)
        {
            // Get an array of all rows with errors.
            rowsInError = table.GetErrors();
            // Print the error of each column in each row.
            for(int i = 0; i < rowsInError.Length; i++)
            {
                foreach(DataColumn column in table.Columns)
                {
                    Console.WriteLine(column.ColumnName + " " + 
                        rowsInError[i].GetColumnError(column));
                }
                // Clear the row errors
                rowsInError[i].ClearErrors();
            }
        }
    }
}

Version Information

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.