实体框架DbContext执行的日志查询

我在MVC 5项目中将EF 6.0与LINQ一起使用。我想记录由实体框架DbContext执行的所有SQL查询,以进行调试/性能评估。

在Java /

Hibernate中,可以通过设置property来实现等效行为hibernate.show_sql=true。实体框架中是否可能有类似行为?

回答:

您正在寻找MSDN上的“

记录和拦截数据库操作”一文。

DbContext.Database.Log对于采用字符串的任何方法,可以将该属性设置为委托。最常见的做法是TextWriter将其设置为该TextWriter的“写入”方法,以将其与任何其他对象一起使用。当前上下文生成的所有SQL将记录到该编写器中。例如,以下代码会将SQL记录到控制台:

using (var context = new BlogContext())

{

context.Database.Log = Console.Write;

// Your code here...

}

以上是 实体框架DbContext执行的日志查询 的全部内容, 来源链接: utcz.com/qa/414196.html

回到顶部