我有一個.NET winforms
應用程序,它使用ODP
連接到oracle db。 ODP安裝是32位,我正在開發Win 7 64 bit machine
的應用程序。我在開發機器上將平臺目標設置爲x86,並且運行正常。 但是,當我在Win Server 2003 64 bit machine
測試的應用程序它給了異常Win 7 64位和Win Server 2003上的ODP.NET 32位64位
The type initializer for 'Oracle.DataAccess.Client.OracleCommand' threw an exception.
UNHANDLED EXCEPTION STACK TRACE:at Oracle.DataAccess.Client.OracleCommand.Dispose(Boolean disposing)
at System.ComponentModel.Component.Finalize()
UNHANDLED EXCEPTION SOURCE: Oracle.DataAccess
UNHANDLED EXCEPTION INNER EXCEPTION: Oracle.DataAccess.Client.OracleException The provider is not compatible with the version of Oracle client at Oracle.DataAccess.Client.OracleInit.Initialize()
at Oracle.DataAccess.Client.OracleCommand..cctor()
UNHANDLED EXCEPTION DATA: System.Collections.ListDictionaryInternal
UNHANDLED EXCEPTION MESSAGE: The type initializer for 'Oracle.DataAccess.Client.OracleCommand' threw an exception.
當我設定的目標平臺,以Any CPU
在Windows 7 64位它提供了異常:
Could not load file or assembly 'Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. An attempt was made to load a program with an incorrect format.
ODP版本上開發機器(Win 7 64 bit)是11.2.0
,在測試機器上(Win Server 2003 64位)也是11.2.0
我該怎麼做才能在兩臺機器上運行應用程序?任何想法?
有'ORACLE_BASE \ ORACLE_HOME \ odp.net \ bin \ 2.x',但在我的ODP instalaltion下沒有'ORACLE_BASE \ ORACLE_HOME \ odp.net \ bin \ 4'導演。 – gesus