未能加載文件或程序集“Oracle.DataAccess”或它的某一個依賴項.試圖加載格式不正確的程序

.NET:Microsoft Visual Studio 2010 + .NET Framework 3.5

操作系統:windows2008 R2 64 位操作系統

oracle數據庫:32位的ODP.NET 2.0版本

 FluroineFx:FluorineFx v1.0.0.15 (點擊可下載)

FluorineFx的應用程序,發佈到iis上時,報:”未能加載文件或程序集“Oracle.DataAccess”或它的某一個依賴項。試圖加載格式不正確的程序。“。

項目中的oracle提供的.net訪問oralcle數據庫的這個 Oracle.DataAccess.dll的複製本地沒有設置爲true(在項目引用裏找到該引用,右鍵屬性裏有這個”複製本地").所有發佈的時候,它不會自動複製到bin目錄裏。從而出現了上述未能加載的錯誤。如下圖所示:

要麼修改該項目中該引用屬性,要麼就直接把那個dll複製到發佈在服務器上的bin目錄裏。我的iis服務器是64位的,而我的 odp.net是裝的32.所以對應的 Oracle.DataAccess.dll也應該是32位的,這裏涉及iis的配置了。Oracle.DataAccess.dll是32位的,系統是64位的。

這個在iis裏有一個設置如下如:先看看項目使用的應用程序池是哪一個:

然後去應用程序池去配置,先找到Test應用程序池

右鍵高級設置

設置啓用32位應用程序 爲true

OK, 一切正常。

需要注意的是我這裏的Test應用程序池在基本設置裏面託管管道模式 選擇的是經典

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章