Я пытаюсь вставить данные в таблицу tbl_parks, используя функцию, которая принимает два входных параметра и возвращает один выходной параметр, но выдает исключение. Исключением является System.Exception: «Параметр« new_park_id »указан в SQL, но является параметром только для выхода».
Функция:
CREATE OR REPLACE FUNCTION public.insertnewparkandreturnitsid(
title character varying,
user_id uuid)
RETURNS uuid
LANGUAGE 'plpgsql'
СТОИМОСТЬ 100 VOLATILE AS $ BODY $ Declare new_park_id uuid; начать вставку в значения tbl_parks (park_title, user_id) (title, user_id), возвращая park_id в new_park_id;
return new_park_id;
end;
Моя функция в контроллере:
using (var context = new park_dbContext())
{
var parkid = new NpgsqlParameter("new_park_id", NpgsqlDbType.Uuid);
parkid.Direction = System.Data.ParameterDirection.Output;
parkid.DataTypeName = "Uuid";
object[] parameters =
{
new NpgsqlParameter("@title", parkBranch.ParkTitle),
new NpgsqlParameter("@user_id", userid),
parkid
//new NpgsqlParameter
//{
// ParameterName = "new_park_id",
// NpgsqlDbType = NpgsqlDbType.Uuid,
// Size = 20,
// Direction = ParameterDirection.ReturnValue
//}
};