我想启用 EnableSensitiveDataLogging (在Entity Framework Core中可用),但是在Entity Framework中似乎没有这种功能。实体框架中是否有替代方法? (我使用的是EF 6.2,要启用它的原因是在Serilog的日志文件中查看已发布的数据。)
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.EnableSensitiveDataLogging();
// ...
}
编辑-> 我想记录使用serilog通过我的Web api发布的数据模型。 我正在使用Serilog.sinks.File和Swrilog.Sinks.SQLSERVER。
我的StartUp.cs类:
Log.Logger = new LoggerConfiguration()
.ReadFrom.AppSettings()
.WriteTo.MSSqlServer(ConnectionString,
"Serilogs").Enrich.WithUserName()
.Enrich.With<UserNameEnricher>
().Enrich.With<WebApiControllerNameEnricher>()
.Enrich.WithWebApiRouteData().Enrich
.WithWebApiControllerName()
.Enrich.WithWebApiActionName()
.Enrich.WithWebApiRouteTemplate()
.CreateLogger();
SerilogWebClassic.Configure(cfg => cfg
.UseLogger(Log.Logger)
.LogAtLevel(LogEventLevel.Error)
.EnableFormDataLogging(forms => forms
.AtLevel(LogEventLevel.Information)
.OnlyOnError()
.FilterKeywords(new[] { "password", "authToken" })
));