Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 使用linq to sql在asp.net mvc网站中同时处理对同一行的多个更新_Asp.net Mvc_Multithreading_Linq To Sql - Fatal编程技术网

Asp.net mvc 使用linq to sql在asp.net mvc网站中同时处理对同一行的多个更新

Asp.net mvc 使用linq to sql在asp.net mvc网站中同时处理对同一行的多个更新,asp.net-mvc,multithreading,linq-to-sql,Asp.net Mvc,Multithreading,Linq To Sql,我正在使用LINQtoSQL作为asp.NETMVC网站的ORM 我不知道LinqtoSQL在以下情况下会如何表现 假设活动会话中的一个操作修改了表中的一行 在将更改保存到数据库之前,我的意思是在调用_db.SubmitChanges()之前,来自其他会话的另一个操作尝试访问同一行。我确信linq是sql的 将不允许我获取该行,因为这不是更新的数据 所以我的问题是,在这种情况下会发生什么? 如何应对这种情况 我从来没有收到过错误,因为我的网站还在开发中 阶段,并且在任何给定时间都没有太多会话。您

我正在使用LINQtoSQL作为asp.NETMVC网站的ORM

我不知道LinqtoSQL在以下情况下会如何表现

假设活动会话中的一个操作修改了表中的一行 在将更改保存到数据库之前,我的意思是在调用_db.SubmitChanges()之前,来自其他会话的另一个操作尝试访问同一行。我确信linq是sql的 将不允许我获取该行,因为这不是更新的数据

所以我的问题是,在这种情况下会发生什么? 如何应对这种情况

我从来没有收到过错误,因为我的网站还在开发中
阶段,并且在任何给定时间都没有太多会话。

您将能够访问原始行,直到调用
SubmitChanges()
,此时该行将在再次可用之前短暂锁定

您可以阅读有关乐观并发控制和linq的内容