vs2010 使用ef6.0访问oracle数据库报错!

错误信息如下:Schemaspecifiedisnotvalid.Errors:Model1.ssdl(2,2):error0152:NoEntityFrameworkp... 错误信息如下:Schema specified is not valid. Errors:
Model1.ssdl(2,2) : error 0152: No Entity Framework provider found for the ADO.NET provider with invariant name 'Oracle.DataAccess.Client'. Make sure the provider is registered in the 'entityFramework' section of the application config file. See http://go.microsoft.com/fwlink/?LinkId=260882 for more information.
恳请哪位大侠解救小弟于水火
展开
 我来答
zlbcdn
推荐于2016-04-15
知道答主
回答量:30
采纳率:100%
帮助的人:14.2万
展开全部
数据库为Oracle,就不要使用EF了。

问题已经很明显。“Make sure the provider is registered in the 'entityFramework' section of the application config file”,就是让你看看在App.config文件中的<provider>。
【源文件中的内容如下】:

<entityFramework>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</entityFramework>

按理说,只要将<provider />写成:

<provider invariantName="Oracle.ManagedDataAccess.Client" type="System.Data.OracleProviderServices, EntityFramework.OracleServer" />

之类即可,但是可悲啊!

目前支持EF6的provider有:

(1)Microsoft SQL Server provider
(2)Microsoft SQL Server Compact Edition provider
(3)Devart dotConnect Data Providers 【注意】
(4)Firebird provider
(5)Visual Fox Pro porvider
(6)MySQL
(7)PostgreSQL

1、2、4、5、7均可以从NuGget中获取。3、7需要到相应的网站获取。

注意第三个:这个插件就是用于Oracle数据库的,其为第三方插件,由Devart公司开发。但有两大致命缺点:1、收费(是30天免费试用,过了30天要么卸载,要么付款)。2、目前支持的Oracle的最高版本为:Oracle8.2i。

哎!数下流剑客,还是Oracle!!!
百度网友443cea2
2014-01-23 · TA获得超过370个赞
知道小有建树答主
回答量:832
采纳率:73%
帮助的人:258万
展开全部
你这个问题我认为存在2种可能的原因:1.和客户端有关。本机安装oracle客户端。2.和连接字符串有关。字符串里的信息不对。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
darkchen1982
2014-01-24
知道答主
回答量:40
采纳率:0%
帮助的人:10万
展开全部
数据源写错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
adobe47
2014-01-23 · TA获得超过302个赞
知道小有建树答主
回答量:376
采纳率:100%
帮助的人:68.5万
展开全部
数据源写错了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式