实体框架和DBContext问题

Clo*_*ble 2 c# .net-4.0 entity-framework-4 database-concurrency

我被警告不要在我的应用程序中使用多个Entity Framework的DBEntityContext.原因是由于并发访问数据库而导致死锁的风险.

任何人都可以证实吗?如果这是真的,为DBContext实现Singleton对象是个好主意吗?

欢迎任何有关此问题的文章.

谢谢你的进步.

54v*_*r3n 8

ObjectContext和DbContext不是线程安全的.请参阅http://msdn.microsoft.com/library/system.data.objects.objectcontext.aspx.如果在像ASP.NET这样的多线程环境中使用它们,则在使用单个实例时会遇到大麻烦.建议每个请求使用一个ObjectContext.ObjectContext必须在请求结束时处理.在n层ASP.NET应用程序中管理实体框架ObjectContext生命周期和范围的文章可能会有所帮助.

是否有可能,你误解了你的顾问谁告诉你有关死锁的事情?可能是他想以错误的方式使用ObjectContext时警告你可能出现的死锁.