全部,
我正在编写如下代码:
public class UserController : AuthenticatedController
{
private MunicipalContext db = new MunicipalContext();
// GET: Users/Edit/5
public ActionResult Edit(int? id)
{
//Do stuff with db.Users
}
// Other action methods that do stuff with db.Users
}
来自 Java 背景,这感觉就像 Servlet 和实例字段,并且开始在我的脑海中升起那种嗡嗡声。
我会遇到线程安全问题吗?
最佳答案
每个 Controller 将根据请求创建一次,它们不是单例。线程之间不共享任何实例成员。
所以答案是否定的,您的代码没有线程问题,每次对您的 UserController
的操作发出新请求时,都会生成一个新的 UserController
和一个新的 MunicipalContext
被创建。
旁注:记住 Dispose()
您的 MunicipalContext
实例不再使用时。更多信息 here .
关于c# - ASP.NET Controller + Entity Framework 上下文 = 线程安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44058310/