Logging das operações efetuadas pelo Entity Framework na Base

Propaganda
Logging das operações efetuadas pelo Entity Framework na Base de Dados A partir do Entity Framework 6 os comandos enviados pelo Entity Framework para a base de dados podem ser intercetados pelo código da aplicação. Exemplos para gravar num ficheiro as instruções SQL executadas pelo Entity Framework. Exemplo 1: public class LivrosController : Controller { private BibliotecaDbContext db = new BibliotecaDbContext(); // GET: Livros public ActionResult Index() { // return View(db.Livros.ToList()); var logFile = new StreamWriter("C:/temp/log.txt"); db.Database.Log = logFile.WriteLine; var query = db.Livros; logFile.WriteLine("Separar a query da execução"); var lista = query.ToList(); logFile.Close(); return View(lista); } . . . } Exemplo 2: [HttpPost] [ValidateAntiForgeryToken] public ActionResult Edit( [Bind(Include = "LivroId,Titulo")] Livro livro) { var logFile = new StreamWriter("C:/temp/log.txt"); db.Database.Log = logFile.WriteLine; if (ModelState.IsValid) { db.Entry(livro).State = EntityState.Modified; db.SaveChanges(); logFile.Close(); return RedirectToAction("Index"); } logFile.Close(); return View(livro); } 
Download