Linq to Sql : 并发冲突及处理策略
2016-12-09 15:51
411 查看
原文:Linq to Sql : 并发冲突及处理策略
1、 通过覆盖数据库值解决并发冲突
2 、通过保留数据库值解决并发冲突
3、通过与数据库值合并解决并发冲突
1、 通过覆盖数据库值解决并发冲突
try { db.SubmitChanges(ConflictMode.ContinueOnConflict); //需要指定为ConflictMode.ContinueOnConflict } catch (ChangeConflictException e) { foreach (ObjectChangeConflict occ in db.ChangeConflicts) { occ.Resolve(RefreshMode.KeepCurrentValues); //保留当前值,覆盖数据库中的值 } }
2 、通过保留数据库值解决并发冲突
try { db.SubmitChanges(ConflictMode.ContinueOnConflict); } catch (ChangeConflictException e) { foreach (ObjectChangeConflict occ in db.ChangeConflicts) { occ.Resolve(RefreshMode.OverwriteCurrentValues);//以数据库中的值,重写当前值 } } db.SubmitChanges(ConflictMode.FailOnFirstConflict); //处理完冲突后,重试
3、通过与数据库值合并解决并发冲突
try { db.SubmitChanges(ConflictMode.ContinueOnConflict); } catch (ChangeConflictException e) { foreach (ObjectChangeConflict occ in db.ChangeConflicts) { occ.Resolve(RefreshMode.KeepChanges);//保留数据库中的值和当前值,进行合并处理 } } db.SubmitChanges(ConflictMode.FailOnFirstConflict); //处理完冲突后,重试
相关文章推荐
- Linq to Sql并发冲突及处理策略
- Linq to Sql : 并发冲突及处理策略
- Linq to Sql : 并发冲突及处理策略
- Linq to Sql : 并发冲突及处理策略
- Linq to Sql : 并发冲突及处理策略
- 步步为营VS 2008 + .NET 3.5(12) - DLINQ(LINQ to SQL)之事务处理和并发处理
- 在Linq to Sql中管理并发更新时的冲突(1):预备知识
- DLINQ(LINQ to SQL)之事务处理和并发处理
- LINQ-to-SQL那点事~LINQ-to-SQL中的并发冲突与应对
- 步步为营VS 2008 + .NET 3.5(12) - DLINQ(LINQ to SQL)之事务处理和并发处理
- LINQ问题:模拟并发冲突时遇到的问题(LINQ to SQL)
- 步步为营VS 2008 + .NET 3.5(12) - DLINQ(LINQ to SQL)之事务处理和并发处理
- 在Linq to Sql中管理并发更新时的冲突(3):使用记录的时间戳进行检测
- N层研习记录01:试图通过Boolean参数控制并发冲突的检查方式(LINQ to SQL)
- 在Linq to Sql中管理并发更新时的冲突(1):预备知识
- 在Linq to Sql中管理并发更新时的冲突(1):预备知识
- 在Linq to Sql中管理并发更新时的冲突(3):使用记录的时间戳进行检测
- DLINQ(LINQ to SQL)之事务处理和并发处理
- 在Linq to Sql中管理并发更新时的冲突(3):使用记录的时间戳进行检测
- 在Linq to Sql中管理并发更新时的冲突(2):引发更新冲突