当 SaveChanges() 不成功时如何撤消更改?
contextObject.Toto.AddObject( new Toto());
try
{
contextObject.SaveChanges();
}
catch
{
// Undo changes !
}
在此示例中,我想删除内存中的新 Toto 对象。我不想手动删除它。我想将我的 contextObject 同步到我的数据库。
当 SaveChanges() 不成功时如何撤消更改?
contextObject.Toto.AddObject( new Toto());
try
{
contextObject.SaveChanges();
}
catch
{
// Undo changes !
}
在此示例中,我想删除内存中的新 Toto 对象。我不想手动删除它。我想将我的 contextObject 同步到我的数据库。
微软正在努力:无法刷新 ObjectContext 中的某些项目
try
{
// Try to save changes, which may cause a conflict.
int num = context.SaveChanges();
Console.WriteLine("No conflicts. " +
num.ToString() + " updates saved.");
}
catch (OptimisticConcurrencyException)
{
// Resolve the concurrency conflict by refreshing the
// object context before re-saving changes.
context.Refresh(RefreshMode.ClientWins, orders);
// Save changes.
context.SaveChanges();
Console.WriteLine("OptimisticConcurrencyException "
+ "handled and changes saved");
}