私は(初めてで)SerialPortを介してデバイスに情報を送受信するプロジェクトに後で接続されるSQL CEデータベースで作業しています。このデータベースには、コミュニケーションのあらゆる部分に関する情報が保存されます。データセットを更新し、この更新されたデータをデータベースにコミットすることになると、私は少し立ち往生しています。
data = new DataSet();
adapter = new SqlCeDataAdapter("SELECT * FROM " + [table_name])
builder = new SqlCeCommandBuilder(adapter);
adapter.Fill(data, [table_name]);
data.Tables[table_name].Rows[identity_value][a_column] = a_column_value;
adapter.Update(data, [table_name]);
このメソッドを実行する前に、ID 値 1 のテーブルにレコードがあることを確認しています。ただしThere is no row at position 1
、adapter.Update() を呼び出す前に IndexOutOfRangeException が発生しています。データセットの使用方法と更新方法を誤解していると思います。何かアドバイス?
行を更新する前にデータセットを調べてみましたが、デバッガーでデータセットをピアリングできないようです。これを行う方法はありますか?