我使用的是MVC .Net。通常,每当我需要查询数据库时,我总是使用类似下面的内容来创建一个实例:
using (EntitiesContext ctx = new EntitiesContext())
{
....
}
然后我看到很多示例代码在控制器中总是有一个DBContext实例,需要时使用它,并在控制器处理时处理它。
我的问题是:哪一种是使用它的正确方法?任何优势/劣势?也许,有任何性能差异吗?
由于
答案 0 :(得分:3)
按控制器实例使用上下文有多个优点:
从Getting Started with ASP.NET 5 and Entity Framework 6,您可以阅读:
每个范围应该解决一次上下文,以确保性能并确保实体框架的可靠运行。
请参阅相关的SO post,深入解释为什么使用此方法会更好。