EF中使用存储过程

1.存储过程使用out参数返回结果

存储过程:

create or replace procedure PROC_GETSEQ(tbname varchar,ReturnNum  out  number) is
  sql_statement varchar2(100);
begin
   sql_statement :='select '||tbname||'_index.nextval from dual';
 execute immediate sql_statement
  into ReturnNum  ; 
end PROC_GETSEQ;

EF模型中 添加-函数导入-返回类型集合选择无
程序调用:

            System.Data.Objects.ObjectParameter parameter=new System.Data.Objects.ObjectParameter("ReturnNum",DbType.Decimal);
            Console.WriteLine(entity.PROC_GETSEQ(typeof(FLOW_OPRATION).Name, parameter));
            Console.WriteLine(parameter.Value);

更新正上面调用代码:

报错{System.ArgumentException: 传入的值必须是枚举的枚举基或基础类型,如 Int32。

System.Data.Objects.ObjectParameter parameter = new System.Data.Objects.ObjectParameter("ReturnNum", typeof(decimal));

 

 

 

 

posted on 2013-12-10 18:02  顺风车  阅读(582)  评论(0)    收藏  举报