EF  CODEFIRST WITH ORACLE

解决存储过程一直没找到解决方案

所以最后也没办法还是用了最基本的解决方案

采用Oracle.ManagedDataAccess提供的ADO基础访问类,不需要再次额外引用第三方类库了。

using Oracle.ManagedDataAccess.Client;

public object[] ExecuteProc(string procName, params DbParameter[] parms)
{
MyDbContext dbContext = this.GetDbContext(AccessMode.Write);
using (var conn = new OracleConnection(dbContext.Database.Connection.ConnectionString))
{
List<DbParameter> outParms = parms.Where(p => p.Direction == System.Data.ParameterDirection.Output || p.Direction == System.Data.ParameterDirection.ReturnValue).ToList();
OracleCommand command = new OracleCommand(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();
return values;
}
}

调用

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

EF CODEFIRST WITH ORACLE 存储过程的更多相关文章

  1. EF CODEFIRST WITH ORACLE

    摸索了半天,运行通过了,但是还是有一点坑的,对于初次使用的人来说,可能会遇到几个问题 首先安装两个dll 如果你已经下载好了dll Oracle.ManagedDataAccess.dll Oracl ...

  2. EF Code-First(Oracle)通过Migration来更新数据库的表的字段

    关于Oracle中使用Entity Framework 6.x Code-First方式开发,请参考博客(菩提树下的杨过)https://www.cnblogs.com/yjmyzz/p/how-to ...

  3. 2.翻译系列:为EF Code-First设置开发环境(EF 6 Code-First系列)

    原文链接:http://www.entityframeworktutorial.net/code-first/setup-entity-framework-code-first-environment ...

  4. 3.翻译系列:EF Code-First 示例(EF 6 Code-First系列)

    原文链接:http://www.entityframeworktutorial.net/code-first/simple-code-first-example.aspx EF 6 Code-Firs ...

  5. 封装EF code first用存储过程的分页方法

    一年半没有做过MVC的项目了,还是很怀念(因为现在项目还是原来的ASPX),个人还是喜欢mvc,最近又开始重拾MVC,感觉既熟悉又陌生. 记录一下封装好的分页代码 首先先说下 我使用EF codefi ...

  6. oracle 存储过程

    来自:http://www.jb51.net/article/31805.htm Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 I ...

  7. 1.【使用EF Code-First方式和Fluent API来探讨EF中的关系】

    原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/relationship-in-entity-framework-using-code-firs ...

  8. Oracle存储过程语法

    原文链接:http://www.jb51.net/article/31805.htm Oracle存储过程基本语法 存储过程  1 CREATE OR REPLACE PROCEDURE 存储过程名  ...

  9. ORACLE存储过程调用Web Service

    1. 概述 最近在ESB项目中,客户在各个系统之间的服务调用大多都是在oracle存储过程中进行的,本文就oracle存储过程调用web service来进行说明.其他主流数据库,比如mysql和sq ...

随机推荐

  1. ceilometer alarm 创建过程中的DB操作及优化

    创建一个ceilometer alarm需要4次DB操作: api/controllers/v2/alarms.py 1. is_over_quota 每一次都需要查询该user/project的所有 ...

  2. Angular各版本和组件下载

    Angular各版本和组件下载:https://code.angularjs.org/

  3. poj2114树分治

    题意:给你一棵树,每条边有权值,求有没有一条链使得权值和为k 题解:和上一题类似,依旧是树分治,只是我们储存结果的时候是判断加起来为k的点对数,刚开始本来想用map存答案,结果就t了,后来用了vect ...

  4. C++中内部类访问外部类的私有成员

    首先,如果不知道什么是内部类InnerClass的话,就没必要往下看了. 尝试在C++中模仿apple objective-c 的Grand Dispatch简化多线程编程时,使用了boost::fu ...

  5. Linux centos 6.5 搭建 svn服务器

    实例:web1 1.安装subversion #yum install subversion #mkdir -p /oop/svn/ //创建svn目录 #chmod -R 777 /oop/svn ...

  6. Spring_总结_04_高级配置(五)_运行时注入值

    一.前言 本文承接上一节:Spring_总结_04_高级配置(四)_bean的作用域 当讨论依赖注入的时候,我们通常所讨论的是将一个bean引用注入到另一个bean的属性或者构造参数中.它通常指的是将 ...

  7. hdu1085 Holding Bin-Laden Captive!(母函数)

    简单的母函数应用. #include<iostream> #include<cstdio> #include<cstdlib> #include<cstrin ...

  8. bzoj3163 Eden的新背包问题

    多重背包,$q$ 次询问,每次问删一个物品之后花费 $x$ 能装多少物品 $n \leq 3000, x \leq 1000, q \leq 300000$ sol: 网上有很多假做法 正解应该是考虑 ...

  9. group by 和 聚合函数

    1.在oracle中 select * from Table group by id 会报错. 会报不是group by 表达式.为什么一定不能是 * ,而必须是分组的列或者某个列的聚合函数. 在my ...

  10. Git在不同环境换行符设置

    首先我们在eclipse查看两个环境文件的换行符区别: 产生背景 关于“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别.在计算机还没有出现之前,有一种叫 ...