Никак не подберу правильную последовательность передачи параметров. Вылетает ошибка, что входная строка имела неверный формат.
Код С#
protected void ODS_TechObjs_Inserting(object sender, ObjectDataSourceMethodEventArgs e)
{
object ctrl = gvTechObjs.FindEditRowCellTemplateControl((GridViewDataColumn)gvTechObjs.Columns["namehead"], "idpos");
object val = ctrl.GetType().InvokeMember("Value", System.Reflection.BindingFlags.GetProperty, null, ctrl, null);
NpgsqlParameter[] pgsqlParams = { new NpgsqlParameter("p_tobject_id", NpgsqlDbType.Integer),
new NpgsqlParameter("p_tobject_name", e.InputParameters["tobject_name"]),
new NpgsqlParameter("p_position_id", NpgsqlDbType.Integer),
new NpgsqlParameter("p_tobject_type", NpgsqlDbType.Integer),
new NpgsqlParameter("p_tobject_address", e.InputParameters["tobject_address"]) };
pgsqlParams[0].Direction = ParameterDirection.InputOutput;
pgsqlParams[0].Value = e.InputParameters["tobject_id"];
pgsqlParams[2].Value = val;
pgsqlParams[3].Value = e.InputParameters["tobject_type"];
e.InputParameters.Clear();
e.InputParameters["pgsqlParams"] = pgsqlParams;
e.InputParameters["pgsqlProc"] = Resources.PgSQLResources.AddTObjects;
}
Параметры процедуры SQL:
CREATE OR REPLACE FUNCTION metrolog.position_addtobjects(
p_user_name character varying,
INOUT p_tobject_id integer,
p_tobject_name character varying,
p_position_id integer,
p_tobject_type integer,
p_tobject_address character varying)
RETURNS integer
LANGUAGE 'plpgsql'
COST 100
VOLATILE
ROWS 0
AS $BODY$
Я сомневаюсь что вы вообще тестировали функцию, и уже пытаетесь вызывать ее откуда-то. Проверить функцию можно прямо в SQL-консоли pgAdmin:
select metrolog.position_addtobject(<какие-нибудь параметры>);
Если всё ok - таким же образом и вызывайте функцию из программы C# или любой другой, через выполнение SQL-команды (выше) - запрос вернет строку с результатом, всё как обычно.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Доброго времени суток! Возникла следующая трудность, при передаче данных о пользователе, прошедшем аутентификацию в приложении ASPNET MVC на строну...
У Xamarin Forms для android проекта хочу разместить изображение по нажатию на кнопкуДля этого в MainPage
Для перемещения окна есть прозрачный Rectangle, но если двигать окно и в этот момент это окно "превращается" в другое: