让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数据库创建出相同的实体模型: