一、Global.asax錯誤
1、錯誤提示
“/”應用程序中的服務器錯誤。
<%@ Application Codebehind=”Global.asax.cs” Inherits=”AdventureWorks.WebApiApplication” Language=”C#” %>
2、可能原因(不一定全部包括)
(1)DLL組件可能不在正確的路徑上
(2)Inherits後面的值與實際值不匹配
(3)虛擬目錄沒有創建或者映射到其它路徑
3、解決方法
在網上查找了許多資料後總結了一些解決方法:
(1)確保DLL在正確的路徑上,如果沒有,可以刪除後重新添加;
(2)確保Inherits後面的值與實際值匹配,右鍵單擊Global.asax,選擇查看標記,觀察Inherits後面的值,然後打開Global.asax.cs查看類名是否與Inherits後面的值相同,如不相同,修改Global.asax的值;
(3)右鍵web程序,選擇屬性,找到Web標籤,找到項目URL點擊後面的虛擬目錄,重新創建。
4、備註
可能有時出現這種情況:<%@ Application Codebehind=”Global.asax.cs” Inherits=”AdventureWorks.WebApiApplication” %>,可能也有默認語言不是C#的原因,這時需要添加Language=”C#”。
二、安裝Nuget包錯誤
1、錯誤提示
一般會出現類似的異常信息:未能加載文件或程序集“Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed”或它的某一個依賴項。找到的程序集清單定義與程序集引用不匹配。 (異常來自 HRESULT:0x80131040)
2、可能原因
(1)項目引用的dll版本與其它dll所依賴的dll版本不一致;
(2)可能是System.Net.Http.Formatting的某一項配置沒有配置,導致程序默認引用了舊版本的Newsoft.Json,而該版本的Newsoft.Json又找不到;
(3)使用程序包管理器控制檯安裝到其它項目中。
3、解決方法
(1)可以嘗試在web.config或app.config中添加以下代碼:
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
這是爲了使DLL滿足向下兼容。
(2)在使用程序包管理器控制檯時,記得把默認項目改成所需要的項目,然後再通過命令行進行包的安裝、更新或替換低版本。
三、數據庫讀取儲存錯誤
1、錯誤提示
“System.Data.Entity.Infrastructure.DbUpdateException”類型的異常在 EntityFramework.dll 中發生,但未在用戶代碼中進行處理。
2、可能原因
可能是定義的實體類和數據庫列不對應。
3、解決方法
只要把缺少的實體類定義好就行了。