只要在 DbContext.OnConfiguring() 內進行 LogTo 設定,語法如下
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> optionsBuilder.UseSqlServer(連線字串)
.LogTo(Console.WriteLine , LogLevel.Information);
// 或
.LogTo(message => Console.WriteLine(message) , LogLevel.Information);
萬一沒有指定 LogLevel.Infomation 會輸出過多訊息,變得不容易找到 TSQL 語法
info: 2025/3/11 08:41:31.472 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command) Executed DbCommand (12ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT [p].[BusinessEntityID], [p].[AdditionalContactInfo], [p].[Demographics], [p].[EmailPromotion], [p].[FirstName], [p].[LastName], [p].[MiddleName], [p].[ModifiedDate], [p].[NameStyle], [p].[PersonType], [p].[Suffix], [p].[Title], [p].[rowguid] FROM [Person].[Person] AS [p]文章內還其他輸出模式、顯示機密資料和篩選資訊相關可以參考。
沒有留言:
張貼留言