Mostrar SQL gerado pelo Linq to SQL
-
06-09-2019 - |
Pergunta
Como é que um vá sobre vendo o SQL gerado por uma inserção LINQ2SQL? Vamos dizer que eu tenho
db.Elephants.InsertOnSubmit(elephantInstance);
db.SubmitChanges();
Há alguma maneira de ver o SQL? Eu instalei o LINQtoSQL visualizador Scott Gu menciona ( http://weblogs.asp.net/scottgu/archive/2007/07/31/linq-to-sql-debug-visualizer.aspx ) e parece trabalhar para LINQ completa consultas, mas não para inserções como este.
Solução
Você pode usar DataContext.Log para registrar o SQL. Você pode definir qualquer TextWriter à propriedade DataContext.Log. Se você quiser registrar saída para o depurador ou console, tente este http://www.u2u.info/Blogs/Kris/Lists/Posts/Post.aspx?ID=11 -. e você está pronto para ir
Outras dicas
O SQL Server Profiler irá mostrar-lhe as consultas geradas. Ele também irá mostrar-lhe os planos de execução que usa o SQL Server para resolver essas consultas, e fornecer-lhe maneiras de melhorar o desempenho.
Mais informações em http://msdn.microsoft.com/en- us / library / ms187929.aspx