我们在asp.net mvc应用程序(C# /VS2K15)上使用'one dbconnection by request‘模式。基本上,我们在BeginRequest上创建一个DbContext,并在EndRequest上处理它。
我曾经将这个DbContext保存在HttpContext上,但是我们遇到了一个稍微复杂一点的场景,我们需要运行多个线程,这个解决方案停止了工作,因为HttpContext没有在线程之间共享。
首先,我想使用CallContext,但它的对象应该是可序列化的,这不是DbContext的情况。
我想到的(非可选的)解决方案是将DbContexts保存在公共静态字典中,其中键(long)是线程id,但我认为还有更好的解决方案。
在线程之间共享DbContext的最佳解决方案是什么?
谢谢。
https://stackoverflow.com/questions/54024103
复制相似问题