使用 Npgsql 和 EF Core 记录通知
Log notices with Npgsql and EF Core
我正在使用 Npgsql 5 和 EF Core 5。
我将 "Microsoft.EntityFrameworkCore": "Information"
添加到我的 appsettings.json
。
假设我有一个包含以下内容的 sql 命令:
RAISE NOTICE 'foo';
我如何配置提供程序来记录它?
PostgreSQL 通知由 Npgsql ADO.NET 提供程序作为常规 .NET 事件发出。您可以为它注册一个处理程序,如下所示:
conn.Notice += (_, eventArgs) => Console.WriteLine(eventArgs.Notice.MessageText);
您可以将 Console.WriteLine 替换为任何可以将其记录到您的日志记录框架的内容。
目前没有通过 EF Core 日志记录自动路由的集成,我已经打开 https://github.com/npgsql/efcore.pg/issues/2106 来为 7.0 执行此操作。
我正在使用 Npgsql 5 和 EF Core 5。
我将 "Microsoft.EntityFrameworkCore": "Information"
添加到我的 appsettings.json
。
假设我有一个包含以下内容的 sql 命令:
RAISE NOTICE 'foo';
我如何配置提供程序来记录它?
PostgreSQL 通知由 Npgsql ADO.NET 提供程序作为常规 .NET 事件发出。您可以为它注册一个处理程序,如下所示:
conn.Notice += (_, eventArgs) => Console.WriteLine(eventArgs.Notice.MessageText);
您可以将 Console.WriteLine 替换为任何可以将其记录到您的日志记录框架的内容。
目前没有通过 EF Core 日志记录自动路由的集成,我已经打开 https://github.com/npgsql/efcore.pg/issues/2106 来为 7.0 执行此操作。