2016-05-11 50 views
0

我正在嘗試獲取wcf-custom發送端口工作的oracle綁定。 我得到這個錯誤:用於BizTalk綁定的特定版本的Oracle驅動程序?

Could not load file or assembly 'Oracle.DataAccess, Version=2.111.7.0 

在Oracle網站上安裝的無似乎有這個版本。有什麼建議麼?

+0

32位? 64位?設計時間?運行? – Zee

+0

我假設64位。這是一個由發送端口調用的驅動程序,所以我不知道它在封面下的功能。運行時出錯。 – Jay

回答

1

我能夠得到一個解決方法來操作,但它並不理想。我注意到'add generated items'嚮導能夠連接到oracle。這樣做的代碼是在Visual Studio中,並且是32位代碼。所以我知道32位代碼可以連接。我創建了一個只有32位的主機,並且有很多工作。

我從來沒有64位驅動程序工作,但沒有嘗試丹菲爾德的重定向

+0

如果您嘗試在同一臺計算機上同時執行32位和64位,Oracle驅動程序會變得非常挑剔。我看到很多問題。如果這個工作正常,你可能不需要綁定重定向,但是你的64位安裝可能存在問題。 –

3

這將是版本11g第7版(11.1.7)。我相信2來自.Net 2。

我在安裝此32個主機筆記(從Oracle文件下載):

獲取Oracle開發工具 - ODTwithODAC1110621.zip

取默認值,選擇所有項目。將默認轉到C:\ app [yourusername] \ product \ 11.1.0。

然後,對於ODT安裝補丁集 - p6890831_111070_Win32.zip

在安裝過程中從早期步驟中選擇以前的安裝文件夾(C:\應用程式[yourusername] \產品\ 11.1.0)。 選擇現有的Oracle主頁!從屏幕上可能不明顯,它是一個下拉菜單 - 不要選擇文件夾。

這應該給你全局程序集緩存中的Oracle.Data.Access 2.111.7.0 x86。

應該有64位版本可用。

2

如果您嘗試連接到Oracle 11g,timobr是正確的。如果您嘗試連接到12c,則需要更新machine.config綁定以將11g DLL的請求重定向到12c版本。有關更多詳細信息,請參見Sandro Periera's blog;這裏的相關部分添加到machine.config中:

<runtime> 
     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
      <dependentAssembly> 
     <assemblyIdentity name="Oracle.DataAccess" 
      publicKeyToken="89b483f429c47342" /> 

     <bindingRedirect oldVersion="2.111.7.0" newVersion="2.112.1.2" /> 
     </dependentAssembly> 
     </assemblyBinding> 
</runtime> 

注意這必須對所有適用的.NET verions(包括x86和x64)來完成。

另請注意,如果您在64位主機上運行,​​則需要64位驅動程序 - 但管理控制檯是32位應用程序,如果沒有32位驅動程序,將無法正常工作。然而,安裝在同一臺機器上有點具有挑戰性......

相關問題