使ODP.NET托管驱动程序与ADO.NET TableAdapter一起使用

时间:2014-07-18 00:49:56

标签: oracle ado.net odp.net tableadapter

我有一个WCF服务(.NET Framework 4),它使用表适配器(xsd)和System.Data.OracleClient作为依赖项。我正在尝试切换到新的Oracle.ManagedDataAccess.Client

我已经从NuGet安装了ODP.NET Managed Driver。一切都很顺利,它正确安装作为参考。

我在app.config文件中添加了以下内容:

<system.data>
    <DbProviderFactories>
        <add name="ODP.NET Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
    </DbProviderFactories>
</system.data>

并将ConnectionString的providerName属性更改为providerName="Oracle.ManagedDataAccess.Client"

然后我双击表适配器(xsd文件)并右键单击要更改的表适配器,然后单击Properties。然后我得到了这个对话框:

http://i.imgur.com/J543Rqw.png

注意:ConnectionString已从屏幕截图

中删除

当我将Provider的值更改为Oracle.ManagedDataAccess.Client时,出现以下错误:

http://i.imgur.com/kuNg2J0.png

你知道我怎么能做到这一点吗?

1 个答案:

答案 0 :(得分:1)

如果要为Tableadapters或Entity Framework使用VS设计器和向导,则必须安装适用于Visual Studio(ODT)的Oracle Developer Tools。请注意,这不支持VS Express Edition。在您的特定情况下,此安装将更新计算机配置,以便将ODP.NET注册为工厂提供程序。

您可以在此处下载ODT: http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html

作为旁注 - 请注意,在nuget.org上托管的Nuget软件包并未由Oracle提供。如果你想要官方下载,你应该从oracle.com获得。