codefirst 兼容oracle,EF CODEFIRST WITH ORACLE 存储过程

object[] ExecuteProc(string procName, paramsDbParameter[] parms)

{

MyDbContext dbContext= this.GetDbContext(AccessMode.Write);using (var conn = newOracleConnection(dbContext.Database.Connection.ConnectionString))

{

List outParms = parms.Where(p => p.Direction == System.Data.ParameterDirection.Output || p.Direction ==System.Data.ParameterDirection.ReturnValue).ToList();

OracleCommand command= newOracleCommand(procName);

command.Connection=conn;

command.CommandType=CommandType.StoredProcedure;

command.Parameters.AddRange(parms);

conn.Open();

command.ExecuteNonQuery();

command.Parameters.Clear();

command.Dispose();

conn.Close();object[] values = outParms.Select(r =>r.Value).ToArray();returnvalues;

}

}

调用

BaseRepository resp = newBaseRepository();var p3 = resp.GetParameterOut("COUNT_ROW", System.Data.DbType.Int32, 4);object[] o = resp.ExecuteProc("PROC1", p3);var ss = p3.Value;

EF CODEFIRST WITH ORACLE 存储过程

标签:方案   class   data   需要   out   return   command   codefirst   val

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:http://www.cnblogs.com/njcxwz/p/6510823.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值