次の方法で共有


DataRow.GetColumnsInError メソッド

エラーが含まれる列の配列を取得します。

Public Function GetColumnsInError() As DataColumn()
[C#]
public DataColumn[] GetColumnsInError();
[C++]
public: DataColumn* GetColumnsInError() [];
[JScript]
public function GetColumnsInError() : DataColumn[];

戻り値

エラーが含まれる DataColumn オブジェクトの配列。

解説

GetColumnsInError を使用すると、エラーが含まれる列だけが返されるため、エラー処理が必要な DataColumn オブジェクトの数を減らすことができます。個別の列にエラーを設定するには、 SetColumnError メソッドを使用します。処理数をさらに減らすには、 GetColumnsInError を呼び出す前に、 DataRow クラスの HasErrors プロパティを使用して、最初に、 DataRow にエラーが含まれるかどうかを確認します。

RowError など、すべてのエラーを消去するには、 ClearErrors メソッドを使用します。

使用例

[Visual Basic, C#, C++] HasErrors を使用してエラーを検証する例を次に示します。行にエラーがある場合、エラーがある列の配列を GetColumnsInError メソッドが返すので、これらのエラーを解決します。次に、 ClearErrors メソッドを呼び出して、すべてのエラーをクリアします。

 
Private Sub GetAllErrs(ByVal myRow As DataRow)
    ' Declare an array variable for DataColumn objects.
    Dim colArr() As DataColumn 
    ' If the Row has errors, check use GetColumnsInError.
    Dim i As Integer
    If myRow.HasErrors Then 
       ' Get the array of columns in error.
       colArr = myRow.GetColumnsInError()
       For i = 0 to colArr.GetUpperBound(0)
          ' Insert code to fix errors on each column.
          Console.WriteLine(colArr(i).ColumnName)
       Next i
    ' Clear errors after reconciling.
    myRow.ClearErrors()
    End If
 End Sub

[C#] 
private void GetAllErrs(DataRow myRow){
    // Declare an array variable for DataColumn objects.
    DataColumn[] colArr; 
    // If the Row has errors, check use GetColumnsInError.
    if(myRow.HasErrors){
       // Get the array of columns in error.
       colArr = myRow.GetColumnsInError();
       for(int i = 0; i < colArr.Length; i++){
          // Insert code to fix errors on each column.
          Console.WriteLine(colArr[i].ColumnName);
       }
    // Clear errors after reconciling.
    myRow.ClearErrors();
    }
 }

[C++] 
private:
void GetAllErrs(DataRow* myRow){
    // Declare an array variable for DataColumn objects.
    DataColumn* colArr[]; 
    // If the Row has errors, check use GetColumnsInError.
    if(myRow->HasErrors){
       // Get the array of columns in error.
       colArr = myRow->GetColumnsInError();
       for(int i = 0; i < colArr->Length; i++){
          // Insert code to fix errors on each column.
          Console::WriteLine(colArr[i]->ColumnName);
       }
    // Clear errors after reconciling.
    myRow->ClearErrors();
    }
 }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

DataRow クラス | DataRow メンバ | System.Data 名前空間 | ClearErrors | GetColumnError | GetErrors | HasErrors | RowError | SetColumnError