DataSet の更新の有無を確認する方法

  データソースから取得された DataSet に新しく追加、更新、削除が行われたかどうかを確認するには、「HasChanges()」メソッドを使用します。
 このメソッドが返す値により、True の場合は更新あり、False の場合は更新なしと判断できます。
また、「AcceptChanges()」メソッドを実行して DataSet への変更がコミットされた場合、「HasChanges()」メソッドの戻り値は False になります。
【使い方】

 (1) DataSet 全体で新しく追加、更新、削除が行われたかどうかを示す値を取得します。
  // ds は DataSet
  // 更新を判断する
  if ( ds.HasChanges() )
  {
      //結果を表示する
      Console.WriteLine("更新あり");
  }
  else
  {
      //結果を表示する
      Console.WriteLine("更新なし");
  }
            
 (2) DataSet 全体で更新が行われたかどうかを示す値を取得します。
     (DataRowState.Modified で更新されたレコードのみフィルターして確認する)
  // ds は DataSet
  // 更新を判断する
  if ( ds.HasChanges(DataRowState.Modified))
  {
      //結果を表示する
      Console.WriteLine("更新あり");
  }
  else
  {
      //結果を表示する
      Console.WriteLine("更新なし");
  }
【注意】
 接続するコントロールの種類(TextBox等)によっては、カレントレコードの更新確定が入力直後に行われない為、このメソッドで取得できないケースがあります。この場合には、「DataRow.EndEdit()」 メソッドにより、カレントレコードの編集を終了(確定)した後に「HasChanges()」メソッドで確認して下さい。
戻る