实体框架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