首页新闻找找看学习计划

EF连接Oracle初始化ObjectContext异常。

0
[待解决问题]

Unable to find the requested .Net Framework Data Provider. It may not be installed. at System.Data.EntityClient.EntityConnection.GetFactory(String providerString)

The specified store provider cannot be found in the configuration, or is not valid.

at System.Data.EntityClient.EntityConnection.GetFactory(String providerString)

at System.Data.EntityClient.EntityConnection.ChangeConnectionString(String newConnectionString)

at System.Data.Objects.ObjectContext..ctor(String connectionString, String defaultContainerName) 

 

这是一个Windows服务程序,连接字符串是对的,但是在构造ObjectContext时就报错了。

传说的青蛙的主页 传说的青蛙 | 初学一级 | 园豆:2
提问于:2014-10-08 11:28
< >
分享
所有回答(4)
0

The specified store provider cannot be found in the configuration, or is not valid.

要么服务器上没有相应的Provider,要么就是配置连接字符串错了。

爱编程的大叔 | 园豆:29764 (高人七级) | 2014-10-08 11:30

    <add name="DefaultContext" connectionString="metadata=res://*/SJLDDB.csdl|res://*/SJLDDB.ssdl|res://*/SJLDDB.msl;provider=Oracle.ManagedDataAccess.Client;provider connection string=&quot;DATA SOURCE=ORCL;PASSWORD=sjlddb;USER ID=SJLDDB&quot;" providerName="System.Data.EntityClient" />

Provider指的是Oracle.ManagedDataAccess.Client,对应的dll也引用了。

支持(0) 反对(0) 传说的青蛙 | 园豆:2 (初学一级) | 2014-10-08 11:39

我这边服务器上还有个web程序同样的连接配置却没问题

支持(0) 反对(0) 传说的青蛙 | 园豆:2 (初学一级) | 2014-10-08 11:42

@传说的青蛙: 有可能那个程序里面的文件夹有相应的DLL,而你这个里面没有。

支持(0) 反对(0) 爱编程的大叔 | 园豆:29764 (高人七级) | 2014-10-08 12:22
1

下载安装Oracle Data Access Components (ODAC):

http://www.oracle.com/technetwork/topics/dotnet/downloads/index.html

也可以通过nuget安装:

https://www.nuget.org/packages/odp.net.managed/

dudu | 园豆:41311 (高人七级) | 2014-10-08 13:11
0

别乱说哦  EF链接Oracle  有专门的驱动 安装的 

 

装好之后选就好了 跟链接SQL一样 不过选得是orcl  印象不深了

 

其次 如果项目中需要用到 比如说 类库A 创建EF链接 数据库 项目B 要使用 请在项目B的配置文件中 拷贝 类库A 链接数据库的那段字符串

流星霜紫 | 园豆:473 (菜鸟二级) | 2015-01-12 17:31
0

链接oracle是需要安装ODAC驱动的 不然你根本无法打开oracle 其它操作和sql没太大的区别

Sky_Fly | 园豆:280 (菜鸟二级) | 2015-11-17 09:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册