using(var content = new DatabaseContext())
{
context.Database.Log = Console.Write;
var user = context.Users.First(); // na ekran trafi wygenerowany select wyciągający pierwszego usera z tablicy
}
prawda, że proste? A co jeśli chcielibyśmy zapisywać sobie te zapytania do pliku, aby np. móc przewkleić je do jakiegoś managera SQL w celu analizy? Chłopaki od Entity Frameworka, też o tym pomyśleli:
1) Najpierw trzeba utworzyć swojego Loggera (nic trudnego)
public class Logger
{
public void Log(string message)
{
// w tym miejscu można użyć dowolnej biblioteki do logowania np. log4net, nlog etc
File.AppendAllText("log.txt", message + Environment.NewLine);
}
}
2) Następnie podczepiamy loggera do contextu:
var logger = new Logger(); context.Database.Log = sql => logger.Log(sql);
Gotowe, możemy teraz się cieszyć zapisanym sqlem w logu.
Brak komentarzy:
Prześlij komentarz