前言

本文涉及ODP.NET、ODP.NET的托管(managed)驱动、Entity Framework的托管驱动 这三部分的下载、安装、配置。

1、简介

NuGet 是.NET的软件开发包管理工具,它生成并使用这些开发包,包括非微软的软件开发包,例如ODP.NET。NuGet Gallery 是驻存和使用这些开发包的"仓库"。

通过使用ODP.NET、托管的驱动和ODP.NET、托管的EF驱动,开发者可以快速开始ODP.NET和EF的应用程序开发。在Visual Studio中,ODP.NET 的相关开发包的 下载、安装 、配置 这些动作是自动完成的。

本文将新建一个项目,完成ODP.NET的安装,并能运行EF6应用。在开始这个项目前,甚至不需要额外单独安装ODP.NET、Oracle Client、Entity Framework。

注意:32位的ODT(Oracle Developer Tools for Visual Studio),请从这里下载。在使用EF 或 一些 Visual Studio 的设计时特性时(如 TableAdapter 向导),会用到ODT。而通过NuGet下载的ODP.NET、托管驱动等,仅支持运行时,不支持设计时特性。

2、运行环境

  • Visual Studio 2013 以上 , .NET Framework 4 以上
  • Oracle Database 11g Release 2 以上版本
  • 注意:在开始前,不需要单独安装 ODP.NET和EF,这些将在本文的实际操作中进

二、新建项目

新建控制台类型的新工程,命名为NuGet,如下:

三、NuGet 安装和配置ODP.NET

1、在解决方案里右击References并选择Manage NuGet Packages,如图

2、选择Browse选项签,在搜索框中输入“Oracle”,分别选择 Oracle.ManagedDataAccess 和 Oracle.ManagedDataAccess.EntityFramework 并安装,如下图

请注意,本步操作会将开发包依赖的相关程序集如ODP.NET、Managed Driver and EF6一起下载下来,并通过NuGet 自动安装配置。

在安装过程中弹出的许可声明条款,要记得点‘I Accept’。

3、看到程序包边上绿色的小图标,表示安装成功,可以关闭NuGet窗口了。

4、展开References,验证ODP.NET 和 Entity Framework 是否正确被加载到项目里,如果存在,则证明这些程序集被正确的下载和安装了。

5、打开app.config,检查一下这些程序集是否完成自动配置

注意到了吗? ODP.NET 和 Entity Framework 已经被添加到配置信息中去了。托管的ODP.NET不需要安装Oracle Client

6、最后一步是配置数据库链接,配置信息跟你的具体应用环境有关。示例配置信息已经添加了,你可以在此基础上根据自己的环境更改配置参数。

a、链接描述配置信息在 <dataSources>配置节下。根据你的数据库链接描述信息更改Host、Port、Service_Name信息。可以更改SampleDataSource 别名(假设改为ORCLTEST),以重新命名这条配置

b、ODP.NET 的连接字符在<connectionStrings>配置节下,修改 User Id and Password 用以连接数据库。Data Source 的值应改为链接描述信息配置节的别名(此例应为ORCLTEST)

至此,ODP.NET安装配置完成,可以编写和运行任何ODP.NET 以及 EF6 的相关应用了。

下一篇,将讲述如何使用这个环境进行Code First 的开发。

通过NuGet安装和配置ODP.NET(Oracle Data Provider for .NET)的更多相关文章

  1. Oracle Data Provider for .NET now on NuGet

    Oracle Data Provider for .NET now on NuGet 时间 2015-03-02 22:30:00  Oracle Bloggers原文  http://cshay.b ...

  2. Oracle Data Provider for .NET的使用(托管与非托管(一))

    目录 简单的概述 简单的使用 非托管系统要求 托管驱动系统要求 其它的注意事项 ODP.NET版本说明 安装ODP.NET 安装非托管驱动 非托管驱动绿色配置 简单的概述 ODP.NET的含义是 Or ...

  3. Oracle Data Provider for .NET 的使用经验

    原文:Oracle Data Provider for .NET 的使用经验 Oracle Data Provider for .NET 是Oracle提供的基于Ado.net接口的一个开发包.    ...

  4. Oracle Data Provider for .NET Support for Microsoft .NET Core

    Oracle Data Provider for .NET Support for Microsoft .NET Core的官方地址,记录下来,按照官方描述,会在2017年底左右发布,暂时还没有看到相 ...

  5. Oracle Data Provider for .NET的使用(二)-驱动更换与注意事项

    上篇说过了ODP的安装与配置 ,但是个人比较喜欢托管类型的,毕竟非托管类型的,因为考虑到会有用户或者是服务器或者是开发人员有32位的机器,就要强制编译平台平台为32位,只因为这个驱动,有点让人不愉快了 ...

  6. PLSQL Developer安装、配置、连接oracle数据库

    0.资源准备 1) PLSQL Developer安装包(由于安装包超过10M,无法上传,请自行下载) 2) instantclient_11_2安装包(由于安装包超过10M,无法上传,请自行下载) ...

  7. Oracle Data Provider for .NET – Microsoft .NET Core and Entity Framework Core

    http://www.oracle.com/technetwork/topics/dotnet/tech-info/odpnet-dotnet-ef-core-sod-4395108.pdf Orac ...

  8. Oracle Data Provider for .NET的使用(三)-ORACLE与.NET类型对应关系

    想来这个是最重要的事情了,因为多数情况下,我们使用dbhelper来调用数据库的时候,是因为如下三个地方导致错误: 1.错误的sql语句:末尾多了分号,少了部分关键字 2.sql中的参数与parame ...

  9. Oracle Data Provider for .NET

    官方地址: http://www.oracle.com/technetwork/topics/dotnet/index-085163.html 终于有正式版了.不用装客户端,又小,确实好.

随机推荐

  1. 【校招面试 之 C/C++】第20题 C++ STL(二)之Vector

    1.vector的动态增长 当添加元素时,如果vector空间大小不足,则会以原大小的两倍另外配置一块较大的新空间,然后将原空间内容拷贝过来,在新空间的内容末尾添加元素,并释放原空间.vector的空 ...

  2. IIS文件名解析漏洞扼要分析

    概括: 从技术角度分析IIS6文件名解析漏洞的原理与IIS7的相关情况. a.IIS6错误解析文件类型现象 1.当WEB目录下,文件名以 xxx.asp;xxx.xxx 来进行命名的时候,此文件将送交 ...

  3. BZOJ 1345[BOI]序列问题 - 贪心 + 单调栈

    题解 真的没有想到是单调栈啊. 回想起被单调栈支配的恐惧 最优情况一定是小的数去合并 尽量多的数,所以可以维护一个递减的单调栈. 如果加入的数比栈首小, 就直接推入栈. 如果加入的数大于等于栈首, 必 ...

  4. Git 初始状操作指引

    You have an empty repository To get started you will need to run these commands in your terminal. Ne ...

  5. javac 编译java文件提示: 程序包com.mysql.jdbc不存在

    需要将引用的包放到:/usr/java/jdk1.7.0_75/jre/lib/ext 也就是jdk安装目录/jre/lib/ext   目录下面

  6. 导出jar文件

    当我们编好一段代码时,就需要将其导出成应用程序,即jar文件(jar文件就是在Java运行环境下运行的应用程序).今天,巩固就教大家用eclipse导出jar文件. 第一步:找到eclipse,双击打 ...

  7. "我们分手吧。"女的对男的说。 "为什么呢?亲爱的,你不要我了么?" "因为你幼稚。"女的坚定地语气回答道,然后转身准备走。 男的上前踩住女的影子,然后说...

    1."我们分手吧."女的对男的说. "为什么呢?亲爱的,你不要我了么?" "因为你幼稚."女的坚定地语气回答道,然后转身准备走. 男的上前踩 ...

  8. jquery报.live() is not a function的解决方法

    jquery报.live() is not a function的解决方法: jquery中的live()方法在jquery1.9及以上的版本中已被废弃了,如果使用,会抛出TypeError: $(. ...

  9. python pip国内源

    pip国内的这个源最快   清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 修改源方法: 临时使用: 可以在使用pip的时候在后面加上-i参数,指定pip ...

  10. js 验证input 输入框

    <h1>js验证输入框内容</h1><br /><br /> 只能输入英文<input type="text" onkeyup ...