刚转了新公司,以前公司都是用VS+MSSQL作为开发工具的

现在新公司由于数据库是Oracle,而且新公司比较小规模,开发团队也没有什么规范

访问数据库的方式一直使用ADO.net的DataTable、DataAdapter、DataConnect的方式

没有用其他的ORM框架,就自己研究了一下Oracle+EF的开发

一开始上网就直接找到了Oracle官网的ODP.net

Oracle Data Access Components (ODAC) for Windows Downloads

32-bit ODAC with Oracle Developer Tools for Visual Studio Downloads
32-bit ODAC Xcopy and NuGet Downloads
64-bit ODAC Downloads - Oracle Universal Installer and Xcopy
Oracle Developer Tools for Visual Studio 2015 - MSI Installer
Oracle Developer Tools for Visual Studio 2013 - MSI Installer

看到以上的选项,我看都不看,就直接下载了

Oracle Developer Tools for Visual Studio 2015 - MSI Installer

然后就是建立项目,选择需要访问的关系表(我本机有同事帮忙安装了Oracle客户端,设置了连接Oracle的TNS),建立实体,一切都看似很顺利

到了最后执行代码的时候,却出现提示错误:指定的存储区提供程序在配置中找不到,或者无效。

网上找了一堆有关这个错误的Blog,基本都是指向了:GAC安装错误(版本、x86x64问题等)

然后就不停尝试安装

64-bit ODAC Downloads - Oracle Universal Installer and Xcopy

什么gacutil查看都得出了Blog里面正确的结果,但是还是提示这个错误

最后,我就直接新建了一个虚拟机(Win7x64),安装vs2015(update1)社区版,然后就是安装不同的odp.net进行尝试

惊喜出现了,我直接安装

32-bit ODAC with Oracle Developer Tools for Visual Studio Downloads

里面的ODTwithODAC121024.zip

Oracle官网上面写得很清晰,这个安装包包括了:

Oracle Developer Tools for Visual Studio 12.1.0.2.4
Oracle Data Provider for .NET 4 12.1.0.2.0
Oracle Data Provider for .NET 2.0 12.1.0.2.0
Oracle Providers for ASP.NET 4 12.1.0.2.0
Oracle Providers for ASP.NET 2.0 12.1.0.2.0
Oracle Database Extensions for .NET 4 12.1.0.2.0 -- for upgrade only
Oracle Database Extensions for .NET 2.0 12.1.0.2.0 -- for upgrade only
Oracle Provider for OLE DB 12.1.0.2.0
Oracle Services for Microsoft Transaction Server 12.1.0.2.0
Oracle ODBC Driver 12.1.0.2.0
Oracle SQL*Plus 12.1.0.2.0
Oracle Instant Client 12.1.0.2.0

其实我走的弯路,主要应该是因为我的机器有人帮我安装了Oracle客户端

如果有像我一样,什么都没有的情况下,其实直接下载这个【32-bit ODAC with Oracle Developer Tools for Visual Studio Downloads】就可以了

里面包含了最重要的两样:

1、Oracle Instant Client 12.1.0.2.0

2、Oracle Data Provider for .NET

在安装这个工具的时候,会将所有的EF所需要的环境都设置好

我在自己的电脑上,重新安装一次也是不行,所以我最终也没有找到怎么解决这个问题的办法,希望最终能解决这个问题的朋友,能把方法写成Blog,然后把Blog的地址发一下给我参考,我邮箱:489427256 @ qq.com

Visual Studio 2015 使用ODP.net进行EF开发的更多相关文章

  1. ASP.NET 5系列教程 (五):在Visual Studio 2015中使用Grunt、Bower开发Web程序

    基于Visual Studio 2015,你可以: 方便的管理前端包,如jQuery, Bootstrap, 或Angular. 自动运行任务,如LESS.JavaScript压缩.JSLint.Ja ...

  2. Windows 10和Visual Studio 2015 能给.Net方向的开发从业者带来什么?

    .Net 多年前我们选择了你,现在在当前的移动互联网热火朝天的时代,你能给我们什么样的惊喜?面对IOS和android的势头,windows的移动端能否实现三国鼎立? windows 10 号称统一各 ...

  3. Visual Studio 2015 预览版 - 支持跨平台开发Android/iOS应用程序(内置安卓模拟器)

    微软最近的惊人举动真多,对普通消费者Office 移动版宣布免费,对开发者也发布了完全免费的 VS2013 社区版! 不仅如此,就连 .Net 开发框架环境也竟然「开源」并且跨平台支持 Mac 及 L ...

  4. Visual Studio 2015 前端开发工作流

    Visual Studio 2015 CTP 5,全称为 Visual Studio 2015 Community Technology Preview 5,意为社区技术预览版,之前的版本为:Visu ...

  5. Visual Studio 2015简体中文企业版/专业版下载+有效激活密钥

    Visual Studio 2015是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代码管控工具.集成开发环境(IDE)等等.所写的目标代码适用于微软支持的所有 ...

  6. Visual Studio 2015 + Update 1

    Visual Studio 2015是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代码管控工具.集成开发环境(IDE)等等.所写的目标代码适用于微软支持的所有 ...

  7. Visual Studio 2015 个版本下载

    Visual Studio 2015是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代码管控工具.集成开发环境(IDE)等等.所写的目标代码适用于微软支持的所有 ...

  8. Visual Studio 2015 官方下载及密钥

    Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品.Visual Studio 2015 是一个丰富的集成开发环境,可用于创建出色的 Windows.Andr ...

  9. Visual Studio 2015 开发 ASP.NET 5 有何变化?

    本篇博文目录: ASP.NET 5 模版 ASP.NET 5 目录结构 前端管理工具 无编译开发 Microsoft Git Provider 智能感知和错误信息 Smart Unit Testing ...

随机推荐

  1. 一个js编写全选、弹出对话框、ajax-json的案例

    js功能有:全选.弹出对话框.使用json传输ajax数据:不想在写多余的文字了,直接上代码: <%@ page language="java" contentType=&q ...

  2. Linux命令vi/vim编辑

    一.vi的基本概念基本上vi可以分为三种状态,分别是命令模式(command mode).插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:a) 命令 ...

  3. linux 终止用户会话

    第一步使用 tty 命令 查看自己会话id:本例中会话id为1[root@localhost ~]# tty/dev/pts/1[root@localhost ~]# 第二步 使用 w 命令 查看当前 ...

  4. cellForRowAtIndexPath方法不执行的那些坑

    今天用到了uitableview,是xib形式的.不过cellForRowAtIndexPath方法死活不执行,检查了返回的row数量,section的数量,数据源,代理都没问题,不过cellForR ...

  5. C# 参数按照ASCII码从小到大排序(字典序)

    在对接第三方支付的时候,第三方会要求参数按照ASCII码从小到大排序.如下: public static void requestPay() { Dictionary<string, strin ...

  6. 把python项目部署到centos里

    .安装centos VMware9下面安装centos .在centos下面设置共享文件夹为你本地的论坛的代码,然后设置网络为桥接:直接连接到物理网络,赋值网络连接状态 .进入forum_svr.py ...

  7. Qt窗口句柄

    关键字: 透明效果,异形,子窗口,控件,浮窗,同级句柄

  8. redis数据结构与主要命令

    redis的数据类型有:string.hashes.lists.sets,sorted sets 1.string类型: set.get添加键值对获得键值对.如果多次赋值会覆盖掉原来的value se ...

  9. 【转】linux之自建yum仓库

    原链接:http://www.live-in.org/archives/1410.html 平时使用yum方式安装更新软件,可以自建一个yum源,同步官方更新源,这样如果本地有机器要升级的话就可以直接 ...

  10. django解决跨域请求的问题

    跨域请求可以用jsonp来解决,不过今天我发现一个很好用的包:django-cors-headers 只需要简单地配置一下就可 被请求方的setting.py中的配置如下: INSTALLED_APP ...