我要查看生成的sql来调试Console.WriteLine();在Visual studio Code中,用Console.WriteLine(),我看不到原始查询;
var result = from employee in db.EmployeeUsers
...
select employee.id..;
string sql = result.ToString();
Console.WriteLine(sql);
但它显示成这样
Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryable`1[<>f__AnonymousType1641]
我怎么能看到这样的原始查询呢?
[SELECT employee.id FROM ... WHERE...;]
我先设置这个,
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
,"Microsoft.EntityFrameworkCore.Database.Command": "Information"
}
},
但我没发现我的设置是否有误。然后我设置了
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> optionsBuilder.LogTo(Console.WriteLine);
但它显示了每个原始查询。
我只是希望Query只打印在我在VisualStudioCodeTerminal中指定的部分。
1条答案
按热度按时间mm9b1k5b1#
显然你可以调用.ToQueryString()或者使用Query属性。
https://stackoverflow.com/a/68797954/1974021