Dapper를 사용하고 있습니다. 더 행복 할 수는 없지만 here과 같이 일반적인 저장 프로 시저에 액세스하는 방법을 알고 있습니다. 그러나 Npgsql
refcursor
이름을 전달하는 방법은 무엇입니까? proc (C# 사용)? 예를 들어 :refcursor 매개 변수 쿼리를 사용하여 Dapper/Npgsql 저장 프로 시저
FUNCTION xx.getData(
v_ref refcursor,
v_id integer)
RETURNS refcursor AS
...
어떻게 xx.getData
에 대한 매개 변수를 지정합니다 :
나는처럼 보이는 시저가? getData
는 int 형의 한 매개 변수를 허용하는 경우
예를 들어, 나는 그렇게처럼 호출 할 수 있습니다
var data = cnn.Query<myType>("xx.getData", new {Id = 1},
commandType: CommandType.StoredProcedure);
또는
이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 사용자 정의 유형 핸들러 –