'Oracle.DataAccess,版本= 2.122.1.0,文化=中性,PublicKeyToken = 89b483f429c47342'或其依赖项之一

时间:2019-01-24 18:18:41

标签: oracle visual-studio-2012 x86 64-bit processor

我在Visual Studio 2012中构建了一个Web项目。它使用Oracle.DataAccess.dll 现在,我在解决方案中看到的是4.121版本。但是在项目正在寻找2.122版本的地方收到此错误。 感谢您的提前帮助

下面是堆栈跟踪

  

===预绑定状态信息=== LOG:DisplayName = Oracle.DataAccess,版本= 2.122.1.0,Culture = neutral,   PublicKeyToken = 89b483f429c47342(完全指定)日志:Appbase =   文件:/// C:/ TFS / IVAS / CPTSBaselineCode / FrontEndApplications / CampaignPerformanceTracking / CampaignPerformanceTracking /   日志:初始PrivatePath =   C:\ TFS \ IVAS \ CPTSBaselineCode \ FrontEndApplications \ CampaignPerformanceTracking \ CampaignPerformanceTracking \ bin   调用程序集:Aarp.Cpts.DataObjects,Version = 1.0.0.0,   文化=中性,PublicKeyToken =空。   === LOG:此绑定在默认加载上下文中启动。日志:使用应用程序配置文件:   C:\ TFS \ IVAS \ CPTSBaselineCode \ FrontEndApplications \ CampaignPerformanceTracking \ CampaignPerformanceTracking \ web.config   日志:使用主机配置文件:日志:使用机器配置   来自的文件   C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ config \ machine.config。   日志:政策后参考:Oracle.DataAccess,版本= 2.122.1.0,   文化=中性,PublicKeyToken = 89b483f429c47342日志:尝试   下载新网址   文件:/// C:/ Users / XXX / AppData / Local / Temp / 1 / Temporary ASP.NET   文件/vs/ecf130a4/7d736bb0/Oracle.DataAccess.DLL。日志:尝试   下载新网址   文件:/// C:/ Users / XXX / AppData / Local / Temp / 1 / Temporary ASP.NET   文件/vs/ecf130a4/7d736bb0/Oracle.DataAccess/Oracle.DataAccess.DLL。   日志:尝试下载新的URL   文件:/// C:/TFS/IVAS/CPTSBaselineCode/FrontEndApplications/CampaignPerformanceTracking/CampaignPerformanceTracking/bin/Oracle.DataAccess.DLL。   WRN:比较程序集名称导致不匹配:Major   版本ERR:无法完成装配的设置(hr = 0x80131040)。   探测终止。

堆栈跟踪:

  

[FileLoadException:无法加载文件或程序集   'Oracle.DataAccess,版本= 2.122.1.0,区域性=中性,   PublicKeyToken = 89b483f429c47342'或其依赖项之一。的   找到的程序集的清单定义与程序集不匹配   参考。 (来自HRESULT的异常:0x80131040)]
  CampaignPerformanceTracking.JobSearch..ctor()在   c:\ TFS \ IVAS \ CPTSBaselineCode \ FrontEndApplications \ CampaignPerformanceTracking \ CampaignPerformanceTracking \ JobSearch.aspx.cs:25   ASP.jobsearch_aspx..ctor()在   c:\ Users \ XXX \ AppData \ Local \ Temp \ 1 \ Temporary ASP.NET   文件\ vs \ ecf130a4 \ 7d736bb0 \ App_Web_xghf0hzg.3.cs:0
  __ASP.FastObjectFactory_app_web_xghf0hzg.Create_ASP_jobsearch_aspx()在c:\ Users \ XXX \ AppData \ Local \ Temp \ 1 \ Temporary ASP.NET中   文件\ vs \ ecf130a4 \ 7d736bb0 \ App_Web_xghf0hzg.4.cs:0
  System.Web.Compilation.BuildResultCompiledType.CreateInstance()+31
  System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath   virtualPath,类型requiredBaseType,HttpContext上下文,布尔值   allowCrossApp)+100
  System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext上下文,   字符串requestType,VirtualPath,virtualPath,字符串physicalPath)+31   System.Web.UI.PageHandlerFactory.System.Web.IHttpHandlerFactory2.GetHandler(HttpContext   上下文,字符串requestType,VirtualPath,virtualPath,字符串   physicalPath)+64
  System.Web.HttpApplication.MapHttpHandler(HttpContext上下文,字符串   requestType,VirtualPath路径,String pathTranslated,布尔   useAppConfig)+191
  System.Web.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()   +156 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep步骤)+48 System.Web.HttpApplication.ExecuteStep(IExecutionStep   步骤,布尔值和已同步完成)+159

1 个答案:

答案 0 :(得分:0)

如果仅看到错误消息,而没有其他任何帮助,那么对您的帮助会有点困难。一些要点:

  • 您在编译选项中设置了哪个版本的.NET Framework?如果设置为3.5或更低,则您的应用程序将尝试加载Oracle.DataAccess.dll 2.xxx。如果设置为4.0或更高版本,则将加载Oracle.DataAccess.dll 4.xxx。

  • Oracle.DataAccess.dll的体系结构(即32位或64位)必须与应用程序的体系结构相同

  • 您是否安装了Oracle.DataAccess.dll(.NET的Oracle数据提供程序)? -默认情况下,它不包含在Oracle Instant Client中。

  • git stash drop的版本必须与您的Oracle客户端完全相同版本

  • Oracle安装程序12.1或更高版本未将Oracle.DataAccess.dll添加到GAC。您必须手动添加它。