有很多这样的代码块:
public class SomeController : Controller
{
DbEntities entity = new DbEntities();
public ActionResult Add()
{
entity.someOperations...
return View();
}
public ActionResult Edit()
{
entity.someOperations...
return View();
}
public ActionResult Detail()
{
entity.someOperations...
return View();
}
public ActionResult Detail()
{
entity.someOperations...
return View();
}
.....
我应该像这样更改方法吗?:
public class SomeController : Controller
{
public ActionResult Add()
{
using(DbEntities entity = new DbEntities())
{
entity.someOperations...
}
return View();
}
.....
EF中不使用using-statement
有什么问题?或者最好的方法是什么?此外,如果我们使用 using-statement
代码块会增长。
谢谢...
最佳答案
如果使用 using-statement 在上面的示例中没有大问题,但是当 dbContext 是局部变量时,很难为这样的代码编写单元测试。
如果你不遵循 Repository、Unit of Work 等任何设计模式,你不想编写单元测试,那么将所有逻辑包装在 using 语句 中是这种情况下的最佳选择.
关于c# - 在不使用语句的情况下使用 Entity Framework 的缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14643491/