我有一個應用程序在.exe文件所在的目錄下使用了ODAC 11的本地版本。這個想法是我們希望我們的應用程序使用本地ODAC 11,而不管用戶在她的機器上安裝了什麼。爲什麼ODP.NET 11 xcopy部署在裝有Oracle DB 10的機器上工作?
Oracle.DataAccess.dll與.exe位於同一目錄中。
它正常工作時,客戶機沒有安裝Oracle客戶端,但在Oracle數據庫10.2.0.something安裝啓動它時,一臺機器上我得到一個錯誤:
The type initializer for 'Oracle.DataAccess.Client.OracleConnection' threw an exception.
[Stack Trace]
The provider is not compatible with the version of Oracle client
OracleException
at Oracle.DataAccess.Client.OracleInit.Initialize()
at Oracle.DataAccess.Client.OracleConnection..cctor()
我猜這與運行時綁定策略有關,但在Google上搜索「Oracle/ODAC/ODP.NET運行時綁定策略」並沒有發現任何有用的東西。
有誰知道如何解決這個問題?
如果不是這個特定的問題,有人能指向我如何做我想做的事情的概述:確保我的應用程序使用ODAC 11無論是什麼?