0
我正在使用Dapper(我不能更快乐),我知道如何访问正常提到的存储过程here,但是,我该如何传递Npgsql
refcursor
名称到proc(使用C#)?例如:Dapper/Npgsql与refcursor参数查询存储过程
我有一个进程,看起来像:
FUNCTION xx.getData(
v_ref refcursor,
v_id integer)
RETURNS refcursor AS
...
我怎么会指定xx.getData
参数?
例如,如果接受int类型的只是一个参数getData
,然后我可以调用它像这样:
var data = cnn.Query<myType>("xx.getData", new {Id = 1},
commandType: CommandType.StoredProcedure);
OR
var p = new DynamicParameters();
p.Add("@id", 11);
cnn.Execute("xx.getData", p, commandType: CommandType.StoredProcedure);
我不能System.DbType
找到正确的类型在查询中传递。
阿汗,谢谢你的信息。实际上,Dapper的'DynamicParameters.Add(...)'接受一个'System.DbType'参数,并且'NpgsqlDbType.RefCursor'没有相应的类型(或者至少我找不到一个)。 – Achilles
您可能想看看Dapper自定义类型处理程序 –