我有一个 PostgreSQL 函数,它接受一个类型为 的参数json。使用 Dapper,我如何执行将对象传递给 PostgreSQL 函数的调用,以便 PostgreSQL 将类型识别为 asjson而不是 as text?
CREATE OR REPLACE FUNCTION testfuncthattakesinjson(heroes json)
RETURNS SETOF characters
LANGUAGE 'sql'
STABLE
ROWS 100
AS $BODY$
SELECT c.*
FROM characters c
JOIN json_array_elements(heroes) j
ON c.first_name = j->>'first_name'
AND c.last_name = j->>'last_name';
$BODY$;
Run Code Online (Sandbox Code Playgroud)
[Test]
public void Query_CallFunctionThatTakesInJsonParameter_FunctionUsesJsonType()
{
using (var conn = new NpgsqlConnection(Db.GetConnectionStringToDatabase()))
{
var funcName = "testfuncthattakesinjson";
var expect = CharacterTestData.Where(character => character.id …Run Code Online (Sandbox Code Playgroud)