0

PostgreSQL にストアド プロシージャがあります。

CREATE OR REPLACE FUNCTION dosmth()
RETURNS boolean AS
$BODY$
BEGIN

RETURN FALSE;

 END;
 $BODY$
 LANGUAGE 'plpgsql' VOLATILE

ado.net から戻り値を取得する必要があります。私は次のことをしようとします:

   DbCommand cmd = DBTemplate.CreateStoredProcedureCommand(dbConnection, "dosmth");

   cmd.Parameters.Add(DBTemplate.CreateParameter(System.Data.DbType.Boolean,
                "@RETURN_VALUE", System.Data.ParameterDirection.ReturnValue));

   DBTemplate.ExecuteNonQuery(cmd);
   Boolean bl = Convert.ToBoolean(cmd.Parameters["@RETURN_VALUE"].Value);

DBNull残念ながら、これは機能せず、型を に変換できないことを教えてくれBooleanます。
何か案は?

4

1 に答える 1

1

ExecuteScalarの代わりに使ってみてくださいExecuteNonQueryExecuteNonQueryそれも結果ではないことを思い出しているようですreturn

于 2009-05-15T22:35:02.050 に答える