- 6
- 0
- 约1.18万字
- 约 12页
- 2022-03-06 发布于上海
- 举报
? ?
?
? ?
EntityFramework并发冲突解决方案
?
? ?
?
?
?
?
?
?
?
? ? ?
?
?
?
?
?
在大多数的应用中都会出现客户端同时发送多个请求对同一条数据就行修改,这个时候就会出现并发冲突。我们一般的做法会有如下两种:
乐观并发 所谓的乐观并发就是多个请求同时对同一条数据的更新,只有最后一个更新请求会被保存,其他更新请求将会被抛弃。
悲观并发 所谓悲观并发就是多个请求同时对同一条数据的更新,只有当前更新请求完成或者被抛弃,才会执行下一个更新请求,如果当前更新请求未完成或者未被抛弃,那么后面所有的更新请求将会被阻塞。
通过上面的简单讲解我们简单的了解了如何处理并发请求,那么下面我们来看一下上面两种做法的具体讲解和实现。
零、方法一
在 Entity Framework 中,默认的解决方案是乐观并发,原因是当出现并发情况的时候,内部没有任何对其他客户端访问同一行数据的限制。我们来看一下例子,我们在数据库中存有一条数据,数据如下图所示:
下面我们来修改一下 Name 字段的值:
class Program{ static void Main(string[] args) { int userId = 1; using (var db = new EfContext()) {
原创力文档

文档评论(0)