如何使用 entity framework 内核为 postgreSQL 调用系统函数

How to call system function with entity framework core for postgreSQL

有一个 postgreSQL 函数“pg_try_advisory_lock(key bigint)”returns bool 结果。是否有任何解决方案如何执行此功能并通过 EF Core 获取结果?

EF Core 当前不支持 运行 查询 return 原始(非实体)类型,#11624 跟踪该类型。

但是,很容易下拉到 ADO.NET 并执行您的功能:

await ctx.Database.OpenConnectionAsync();
using var conn = ctx.Database.GetDbConnection();
var cmd = conn.CreateCommand();
cmd.CommandText = "SELECT pg_try_advisory_lock(8)";
var result = (bool)await cmd.ExecuteScalarAsync();
await ctx.Database.CloseConnectionAsync();