[VSTS] 让ADO.NET Entity Framework支持Oracle数据库

近期由于项目所需不得不研究Oracle数据库,回想上一次用Oracle还是07年的事情,实习时候做华晨宝马的项目简单接触了Oracle。这次的项目需要基于.NET平台,我个人的习惯是能用微软自带的就不用第三方的,基于这个原则先想到的ORM模型就是Entity Framework,于是动手尝试一下。

默认情况Visual Studio 2010的.NET项目模板及类型模板中的Entity Framework是不支持Oracle数据库的,找了一圈发现第三方有些插件,但试了一下都不尽如人意,而Oracle官方也有一些工具可以对此做扩展,让Entity Framework支持Oracle数据库,接下来就简单说一下。

首先准备两个东西,都在Oracle官网可以下到:

1. ODAC 11.2 Release 3 (11.2.0.2.1) with Oracle Developer Tools for Visual Studio

下载地址:http://www.oracle.com/technetwork/developer-tools/visual-studio/downloads/index.html

2. Oracle Data Access Components (ODAC) for Microsoft Entity Framework and LINQ to Entities

下载地址:http://www.oracle.com/technetwork/topics/dotnet/downloads/oracleefbeta-302521.html

注意:ODACforEntityFramework不论你的操作系统是32位还是64位,开发人员只装32位,因为VS是32位的程序,这个要切记,装64位的话还是不能用的。

另外,Oracle官网下东西是要注册一个用户的。

安装好环境之后我们就可以使用了:

1. 打开Visual Studio 2010及要使用Entity Framework的项目:

2. 在测试项目上面选择新建项:

3. 选择ADO.NET实体数据模型:

4. 在弹出向导中选择数据库:

5. 在第二步的新建连接中可以看到Oracle选项,如果没有这一项证明上述的工具没装好,再检查一下吧:

5. 选择Oracle数据库后输入数据库配置信息:

6. 测试连接成功后即可确定并完成数据库配置,并保存连接字符串:

7. 选择要生成实体的表:

8. 完成后即可看到与使用SQL Server数据库创建出相同的实体模型:

至此即可开始编写你要的程序,希望上述内容对大家有所帮助,谢谢!

时间: 2024-11-10 01:02:50

[VSTS] 让ADO.NET Entity Framework支持Oracle数据库的相关文章

SQLite的ADO.NET Provider支持ADO.NET Entity Framework

Ado.net 官方博客 http://blogs.msdn.com/adonet/archive/2008/09/06/sqlite-s-ado-net-provider-supports-the-ado-net-entity-framework.aspx sqlite ado.net 的Provider也支持ADO.NET Entity Framework   请见http://sqlite.phxsoftware.com/  

ADO.NET Entity Framework(1)介绍

目录 1 概念 1 2 ADO.NET Entity Framework 2 2.1 架构 2 2.2 说明 2 2.3 EntityConnection 4 2.4 EntityCommand 5 2.5 通过EntityDataReader 方式的数据访问 6 2.6 通过ObjectContext返回ObjectQuery<T> 方式的数据访问 9 概念 LINQ to Entities 一种 LINQ 技术,使开发人员可以使用 LINQ 表达式和 LINQ 标准查询运算符,针对实体数据

在ADO.NET Entity Framework 4中使用枚举

枚举(Enum)是一种常用的类型,如用于表示状态.类型等参数.但目前它不 会被官方地在ADO.NET Entity Framework中进行支持.本文介绍的是通过复杂类 型(Complex Types)在ADO.NET Entity Framework 4中使用枚举. 这种方法需要使用POCO类,而不能使用Visual Studio自动生成的类.因为我 们需要手动为复杂类型编写代码. 数据库脚本: 1 if exists (select 1 2 from sysobjects 3 where i

ADO.NET Entity Framework 4中枚举的使用

  本文将通过ADO.NET Entity Framework 4中枚举的使用介绍,带领大家走进ADO.NET的世界. 枚举(Enum)是一种常用的类型,如用于表示状态.类型等参数.但目前它不会被官方地在ADO.NET Entity Framework中进行支持.本文介绍的是通过复杂类型(Complex Types)在ADO.NET Entity Framework 4中使用枚举. 这种方法需要使用POCO类,而不能使用Visual Studio自动生成的类.因为我们需要手动为复杂类型编写代码.

自定义Unity对象生命周期管理集成ADO.NET Entity Framework

在Unity中,从Unity 取得的实例为 Transient.如果你希望使用多线程方式,就需要在组成时使用lifecycle参数,这时候取出的组件就不再是同一个了.在Unity IOC中,它支持我们对于组件的实例进行控制,也就是说我们可以透明的管理一个组件拥有多少个实例.Unity IOC容器提供了如下几种生命处理方式:# Singleton:一个组件只有一个实例被创建,所有请求的客户使用程序得到的都是同一个实例.# Transient:这种处理方式与我们平时使用new的效果是一样的,对于每次

Microsoft SQL Server Compact 4.0&amp;&amp;ADO.NET Entity Framework 4.1&amp;&amp;MVC3

原文:Microsoft SQL Server Compact 4.0&&ADO.NET Entity Framework 4.1&&MVC3 最近重新查看微软MvcMusicStore-v3.0的源代码,发现忽略了很多重要的东西,特别是数据访问那一部分. 首先Microsoft SQL Server Compact 4.0 详细的介绍和下载地址 链接:http://www.microsoft.com/zh-cn/download/details.aspx?id=17876

艾伟:ADO.NET Entity Framework简介

下一代的ADO.NET的目标是要解决关系数据模型和实际应用程序需要模型之间的鸿沟,那么它是怎么做到的呢? 我们都知道,建立在关系数据库基础之上的应用程序经常需要在不同的表之间做复杂的join操作来取得相关的数据. 比如下面的例子: [图1] 这是一个普通的关系型数据库.这个结构主要描述了雇员的基本信息和雇员的销售情况. 假如我们想取得所有在2006年1月1日招聘过来的全职员工的姓名和职务信息,那么就需要写如下的sql查询语句: 1SELECT c.FirstName, e.Title2FROM 

ado.net entity framework查询性能比较

关于ado.net entity framework 性能比较网上也有很多,这里我只是初步的 介绍下ado.net entity framework使用不同的方法查询数据的不同性能 第一部分:重复查询单个实体 第一种:Linq To Entitiess 代码如下: static void Main(string[] args) { DateTime time1; DateTime time2; time1 = DateTime.Now; NorthwindEntities context = n

mysql-使用Entity Framework链接Mysql数据库所有浮点型字段无法显示问题

问题描述 使用Entity Framework链接Mysql数据库所有浮点型字段无法显示问题 如题,不知道为何只要是Mysql中使用了浮点型字段,在EF在项目中都无法生成实体字段,不知各位大神有没有遇到过的或是解决方案,十分感谢. 解决方案 看看是不是映射的问题,两边不对应.换成decmal看看