[英]ODP.NET: The provider is not compatible with the version of Oracle client
首先,我想說的是,我閱讀了其他問題,但沒有一個對我有幫助。
我收到此錯誤的服務器是Windows 2003 SP2 + .net Framework 4.0 + Oracle i9客戶端
我已經下載了最新的ODP.NET ODAC1120320Xcopy_32bit.zip,將這些dll復制了出去。
我創建了一個僅連接到oracle的小應用程序。 鏈接
而且,當我運行此應用程序時,我得到的是提供程序與Oracle客戶端錯誤的版本不兼容。
在下載頁面上還寫有:下面的每個32位ODAC客戶端下載都支持與Oracle數據庫版本9.2、10.1、10.2和11.1和11.2的連接。
所以我想我的9i數據庫應該可以。
我不確定是否應該使用一些較舊的ODP.NET版本。 SO的一個答案被認為是使用11.1.0.6.20版本,該版本支持.NET 2.0,但是我的應用程序是針對.NET 4.0編寫的。
我能做什么 ?
我不知道在沒有某種安裝的情況下運行oracle客戶端的任何受支持的方法(xcopy版本包括要安裝的批處理文件,因此“ xcopy”有點用詞不當。
就是說,如果您要執行不受支持的操作,則還可以選擇最終將得到支持的內容-100%托管的提供程序(意味着沒有要復制的額外的非托管dll)目前處於測試階段: http:// www.oracle.com/technetwork/database/windows/downloads/odpmbeta-1696432.html
我很震驚,即使只是為了學習,也只能看到最后的結果,所以我很想知道您是否想看看當前的實現方式。 oracle文檔確實指示應用程序目錄實際上是在非托管dll搜索順序中的第一位。 我的猜測是需要其他dll(您使用的是比鏈接文章新的版本)。 我將使用Process Monitor之類的工具查看它從您的應用程序目錄外部加載了哪些特定的dll,並查看是否可以從新的ODAC中找到要復制的等效dll。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.