如何使ODP.NET 4.0(64位)在64位机器Windows 7上运行?

时间:2011-06-08 13:47:41

标签: asp.net odp.net

我正在尝试使用Windows 7 64位计算机中的ODP.NET 4.0客户端运行我的ASP.NET 4.0 WebSite。但到目前为止还没有运气。

我从

下载了ODP.NET 4.0
  

http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html

并使用提供的说明进行安装。

我能够在

中看到Oracle.DataAccess.dll和Oracle.Web.dll
  

C:\的Windows \ Microsoft.NET \组件\ GAC_64 \ Oracle.DataAccess \ v4.0_4.112.2.0__89b483f429c47342   和   C:\的Windows \ Microsoft.NET \组件\ GAC_64 \ Oracle.Web \ v4.0_4.112.2.0__89b483f429c47342

分别

问题是当我尝试添加对网站的引用时,我无法在GAC中看到它们(我的意思是说在.NET选项卡中......显示了GAC中的所有dll)

我以某种方式从我的本地系统中引用它们。

但是在添加引用之后,会在web.config文件中创建以下条目。

  

                                                     

问题是...... 当我尝试构建项目时,它没有给我一个错误说明

  

无法加载文件或程序集'Oracle.DataAccess,Version = 4.112.2.0,Culture = neutral,PublicKeyToken = 89b483f429c47342'或其依赖项之一。系统找不到指定的文件

我认为找不到该文件的原因是因为它正在查找GAC文件夹(C:Windows \ Assembly)并且因为它们不存在..这会引发编译时错误。

但从技术上讲,文件必须位于GAC64文件夹(C:\ Windows \ Microsoft.NET \ assembly \ GAC_64 \ Oracle.DataAccess \ v4.0_4.112.2.0__89b483f429c47342)中,并且dll存在于那里。

我不知道如何解决此错误。

注意:我必须在64位计算机上运行它,并在IIS中将Enable 32 bit Applications标志设置为false。

1 个答案:

答案 0 :(得分:0)

我会在你的系统中搜索这个库 - 通常它会在你添加到gac之前存在于系统的其他地方。添加该位置的引用 - 尝试:ORACLE_BASE \ ORACLE_HOME \ ASP.NET \ Bin \ 2.x \或c:\ Oracle \ odp.net \ bin \ 2.x \ Oracle.Web.dll

无论您在GAC参考选项卡上看到什么,都不是,因为它位于该标签上。这些文件只是“参考组件”,可以在您的系统上的任何位置。找到不在GAC中的dll,并从那里添加对它的引用。在您的系统中搜索oracle.web.dll

请注意: Oracle Providers for ASP.Net Installation 该位置列为:c:\ Oracle \ odp.net \ bin \ 2.x \ Oracle.Web.dll