c# - para - entity framework 6.1.3 tools for visual studio 2015
Entity Framework Object Context por solicitud en ASP.NET? (1)
Sí, es un enfoque aceptado tener ObjectContext / DbContext con tiempos de vida por HttpRequest. Aquí hay una muestra que he proporcionado en otra respuesta.
Sin embargo, es mejor dejar estas gestiones de por vida a una biblioteca de IoC. Los famosos son Castle Windsor , Autofac .
Actualizar:
Para eliminar su contexto, puede usar el método Application_EndRequest
en Global.asax. El siguiente código no está probado, pero obtendrá la idea:
protected virtual void Application_EndRequest()
{
var key = "MyDb_" + HttpContext.Current.GetHashCode().ToString("x")
+ Thread.CurrentContext.ContextID.ToString();
var context = HttpContext.Current.Items[key] as MyDbContext;
if (context != null)
{
context.Dispose();
}
}
¿Se considera una buena práctica usar un solo ObjectContext por solicitud? He leído que estos objetos deben ser de corta duración y no son extremadamente costosos para crear instancias, pero ¿esto hace que el caso sea atractivo para uno de ellos por solicitud? En caso afirmativo, ¿hay algún patrón que implemente correctamente esto?