0

2つのデータセットがあります。最初のデータセットは汎用で、2番目のデータセットは型指定されています。行を更新してデータベースに永続化しようとしていますが、失敗し続けます。これが私がやろうとしていることです:

データを汎用DSにロードします

型指定されたDSを汎用DSとマージします。

タイプされたDSの行を更新します。

ジェネリックでAcceptChangesを呼び出して、データベースに永続化します

//Generic DS
    DataSet ds = GetData();

//Typed Ds
    var gradeTeamConfigDataSet = new GradeTeamConfigDataSet();

//Merge    
    gradeTeamConfigDataSet.tblGradeTeamConfig.Merge(ds.Tables["default"], true, MissingSchemaAction.Ignore);

      //Update
      if (gradeTeamConfigDataSet.tblGradeTeamConfig != null)
             {

                    gradeTeamConfigDataSet.tblGradeTeamConfig.Rows[0].BeginEdit();

                    //Update row

                    gradeTeamConfigDataSet.tblGradeTeamConfig.Rows[0].EndEdit();
             }
    //Persist        
    gradeTeamConfigDataSet.AcceptChanges();

しかし、データベースを再度チェックしても、何も更新されていません。誰かが問題を見つけて、私に解決策を教えてもらえますか?

4

1 に答える 1

0

この投稿をご覧になりましたか

AcceptChangesは、(メモリ内の)データセット内の行のみを更新します。つまり、「実際のデータベースの更新には不要」としてマークを付けます。行をデータベースに更新する場合は、tableadapterのUpdateメソッドを呼び出します。

于 2012-05-21T00:31:29.143 に答える