我有两个数据集,第一个是通用的,第二个是键入的。我正在尝试更新一行并将其持久存储到数据库中但仍然失败。 这是我正在尝试做的事情:
将数据加载到通用DS
中将键入的DS与通用DS合并。
更新输入DS中的行。
调用generic上的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();
但是当再次检查数据库时,它没有更新任何东西! 任何人都可以发现问题,请给我一个解决方案吗?
答案 0 :(得分:0)
你看看this post
AcceptChanges仅更新(内存中)数据集中的行 是 - 将它们标记为“实际数据库更新不需要”。如果你 想要将行更新到数据库,请调用tableadapter 更新方法。