Sql 同时LINQ数据检索问题

Sql 同时LINQ数据检索问题,sql,linq,Sql,Linq,我遇到了一个以前从未发生过的奇怪问题 在登录代码中: var sqlLogin = db.LoginRetrieve(loginID, archived).SingleOrDefault(); //(db是linq数据上下文) --问题: 如果两个用户同时登录,这行代码将抛出一个异常,即“结果中不存在必需的列‘UserLoginID’” 但是,如果一个用户登录,或者两个用户不同时单击该按钮,则没有例外 有人可以在这上面分享一些灯光吗?提前谢谢 韩我怀疑您的数据上下文在请求之间共享 不要那样做

我遇到了一个以前从未发生过的奇怪问题

在登录代码中:

var sqlLogin = db.LoginRetrieve(loginID, archived).SingleOrDefault();
//(db是linq数据上下文)

--问题:

如果两个用户同时登录,这行代码将抛出一个异常,即“结果中不存在必需的列‘UserLoginID’” 但是,如果一个用户登录,或者两个用户不同时单击该按钮,则没有例外

有人可以在这上面分享一些灯光吗?提前谢谢


我怀疑您的数据上下文在请求之间共享

不要那样做

您应该为每个请求创建单独的DataContext。
否则,您将遇到像这样的线程问题。(DataContext不是线程安全的)


一般来说,在请求之间共享对象(例如,
静态
s或应用程序/会话状态)时应该非常小心。
除非您明确知道其他情况,否则应该假定对象不是线程安全的,并且不能共享