es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Qué sucede si accidentalmente no se desecha el contexto de Entity Framework?

Supongamos que tenemos un controlador simple de ASP.NET MVC:

    
public class SomeController: Controller
{
     public ActionResult SomeAction ()
    {
        var db = new SomeDataContext (); // sin ‘using’ o ‘await usando’
        var models = db.Models.ToList ();
        devuelve esta Vista (modelos)
    }
}

¿Qué sucede exactamente si me olvido de la declaración ‘using’? ¿El contexto nunca se expone? ¿Fuga memoria? ¿Realmente es un pecado mortal?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Olvidarse de usar la instrucción using en el código anterior puede provocar fugas de memoria y otros problemas. La instrucción using se utiliza para asegurarse de que el objeto se deseche correctamente, liberando cualquier recurso no administrado que pueda estar reteniendo. Sin ella, el objeto SomeDataContext no se desechará correctamente, lo que posiblemente pueda llevar a fugas de memoria y a una degradación del rendimiento con el tiempo. Esto se considera un error fatal ya que puede tener un impacto significativo en la estabilidad y eficiencia de la aplicación. Siempre es una buena práctica utilizar la instrucción using para asegurar la eliminación adecuada de objetos.

Comments are closed.