我知道各种教程,以及针对WebApi&具有WebApi控制器的实体框架(甚至从Microsoft)如下所示:
public HttpResponseMessage GetInternet(int id) { var context = new InternetDbContext(); var result = (from internet in context.Internets where internet.Id.Equals(id) select internet).FirstOrDefault(); if(result != null) Request.CreateResponse(HttpStatusCode.OK,result); }
但是当我了解了2年前的实体框架时,我发现的关于框架的每一个资源都指出了在最短的可能寿命期内DISPOSE DbContex是非常重要的.与’使用’.而现在,人们似乎并不放弃处理任何东西(他们的经理,存储库,DI容器…).
我在这里遗漏了什么吗? API调用的结束是否自动处理上下文?还是要从http://msdn.microsoft.com/en-us/library/dn153859(v=vs.118).aspx中使用像HttpRequestMessageExtensions.RegisterForDispose()这样的东西?