Entity Framework 与ORACLE ODP.Net 在vs2010下的稀奇古怪的问题

时间:2023-08-13 21:52:32

不说废话

1、在vs2010数据源中看不到oracle odp.net 数据源,vs2008下可以看到,通过oraprocfg配置多次,重启多次,还是看不到,machine.config里面配置也正常。

原因先安装的vs2008 然后安装的odp。net ,再装的vs2010,需要删除掉odp.net重新安装,重启后完成。安装顺序导致的问题

2.Entity Framework与odp.net只能在framework 4以上使用,如果在4以下版本使用,会提示odp没有提供查询的实现接口。

The store provider factory type 'Oracle.DataAccess.Client.OracleClientFactory' does not implement the IServiceProvider interface. Use a store provider that implements this interface.开发环境导致,必须framwork v4以上。

3.Entity Framework中的实体、字段如果大小写不统一,不全为大写,则声称的命令表名 字段名都带双引号,

这将导致在oracle客户端工具中,查询的时候需要把表名、字段加上双引号,去掉oracle双引号的办法是,把表名、字段名全部大写,这样查询就不用区分大小写了。

4.如果不使用odp.net连接数据库,而是用系统自带的oracle数据源连接工具

则声称的sql命令string类字段将是nvarchar而不是nvarchar2,命令在oracle中不能运行成功。数据源提供程序导致。