Подавить инициализацию сообщения EF core 3.0.x
У меня есть:
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
string connectionString = "mydb.db;";
optionsBuilder
.UseLoggerFactory(MainWorker.ConsoleLoggerFactory)
.EnableSensitiveDataLogging(true)
.UseSqlite(connectionString);
}
Всякий раз, когда я получаю доступ к моему DBContext, консоль показывает
информация: Microsoft.EntityFrameworkCore.Infrastructure[10403] Инициализация Entity Framework Core 3.0.0-preview4.19176.6
Есть ли способ отфильтровать это конкретное сообщение? так как я делаю много запросов, это просто загромождает мое окно отладки консоли..
1 ответ
Сообщения журнала EF Core настраиваются с помощью метода DbContextOptionsBuilder.ConfigureWarnings (да, имя немного вводит в заблуждение).
EventId
рассматриваемого сообщения CoreEventId.ContextInitialized
, И вы подавляете это, используя Ignore
:
optionsBuilder.ConfigureWarnings(warnings => warnings
.Ignore(CoreEventId.ContextInitialized));
Конечно, он может быть связан с другим optionsBuilder
звонки. Также вы можете подавить второе сообщение журнала, связанное с временем жизни контекста, с помощью CoreEventId.ContextDisposed
,