使用ASP.Net的Oracle过程行类型

使用ASP.Net的Oracle过程行类型,asp.net,oracle,odp.net,Asp.net,Oracle,Odp.net,我有一个锁定的数据库,带有一些有用的API,但是我正在努力进行最后一次调用以检索值 set serveroutput on; declare v_ne_Id number; begin v_ne_id := package.get_str('10800002').str_ne_id; dbms_output.put_line(v_ne_id); end; / 上面通过SQL plus编写的代码完美地得到了我的结果,但是我正在.net应用程序中使用它。如何在asp.net中检索该值 我已经尝试过

我有一个锁定的数据库,带有一些有用的API,但是我正在努力进行最后一次调用以检索值

set serveroutput on;
declare
v_ne_Id number;
begin
v_ne_id := package.get_str('10800002').str_ne_id;
dbms_output.put_line(v_ne_id);
end;
/
上面通过SQL plus编写的代码完美地得到了我的结果,但是我正在.net应用程序中使用它。如何在asp.net中检索该值


我已经尝试过直接编码上面的pl/SQL,但这不会返回任何值。

经过多次尝试和错误后,我找到了答案。。。这可能有帮助,也可能没有帮助

String SQL = " ";

            SQL += " begin ";
            SQL += " :v_ne_id := package.get_str('10800002').str_ne_id; ";
            SQL += "  ";
            SQL += " end;";

            OracleParameter p_description = new OracleParameter();
            p_description.Direction = ParameterDirection.Output;
            p_description.OracleDbType = OracleDbType.Decimal;
            p_description.Value = "";
            p_description.ParameterName = "v_ne_id";

            using (OracleConnection connection = new OracleConnection(oracleconnection.thisConnString()))
            {
                connection.Open();

                OracleCommand command = new OracleCommand(SQL, connection);


                command.Parameters.Add(p_description);


                command.ExecuteNonQuery();


            }

            return p_description.Value.ToString();