0
でPL/SQL変数の戻り値をテストすることができます。どのように私はPL/SQLを実行thtaコードのこの部分を持っているODP.NET
using (PedidoEntities db = new PedidoEntities())
{
OracleParameter p_existe = new OracleParameter("p_existe", OracleDbType.Int32);
p_existe.Direction = System.Data.ParameterDirection.ReturnValue;
OracleParameter p_modulo = new OracleParameter("p_modulo", OracleDbType.Int32);
p_modulo.Direction = System.Data.ParameterDirection.Input; p_modulo.Value = (int)modulo;
OracleParameter p_usuario = new OracleParameter("p_usuario", OracleDbType.Varchar2);
p_usuario.Direction = System.Data.ParameterDirection.Input; p_usuario.Value = usuario; p_usuario.Size = usuario.Length;
string sql = @"begin
select 1
into :p_existe
from PERMISOS P
inner join USUARIO U ON U.USUARIO = P.USUARIO
where P.MODULO = :p_modulo
and U.NOMBRE = :p_usuario;
exception
when no_data_found then
:p_existe := 0;
end;";
db.Database.ExecuteSqlCommand(sql, p_existe, p_modulo, p_usuario);
return p_existe.Value.Equals(1);
}
問題は、戻り値はINTであるということです私は1または0に対してテストする必要があります。私はちょうどp_existe.Value.ToString()を使用することができ、それは動作しますが、数字であるので、数値としてチェックしたいです。どうしたらいいですか?私が試したキャストは動作しません。私はこのコードを使用している