asp.net 未能加載文件或程序集的可能性

  以前開發和部署中,常常能遇到問題:未能加載文件或程序集。我的收集和處理過幾回,整理如下幾種可能:c++

  1. DLL文件名與加載時的DLL文件名不一致。
  2. DLL文件根本不存在,即出現文件丟失狀況。
  3. 加載DLL路徑錯誤,即DLL文件存在,但加載路徑不正確
  4. 程序集版本錯誤。在A.dll內部引用的b.dll是1.0版本,而實際提供的b.dll是2.0的版本,2個版本衝突,致使版本不明確,編譯異常。
  5. 引用的項目 .net 版本與啓動的框架不一樣。在個人項目中,原來是VS2008也就是.NET3.5的框架,後來升級爲VS2010,可是尚未更改框架,有的程序升級後沒問題,有的升級後編譯經過,一運行就提示「未能加載文件或程序集。。。。」,更改成對應VS版本的.NET4.0後就能夠運行啦!
  6. 64位或32位平臺的問題,默認選擇Any CPU,更改X86或X64看看,有的dll有限制支持X86,X64版本的windows;
  7. dll涉及到c++底層代碼,服務器並未安裝對應的 microsoft visual c++ ,下載安裝後就能夠使用,下載地址:https://support.microsoft.com/zh-cn/help/2977003/the-latest-supported-visual-c-downloads,建議X64,X86的都下載安裝。我的以前引入包(Aurigma.GraphicsMill),在本地能夠使用,在本身電腦和舊服務器都能正常訪問,部署到新買的服務器,始終沒法正常運行,後面對比了2個服務器的安裝程序,一個個排查了才找到的問題。
相關文章
相關標籤/搜索