[C#] 生成 (web): 未能載入檔案或程式集“Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7
阿新 • • 發佈:2019-01-27
有時候編譯asp.net會遇到奇怪的錯誤:
生成 (web): 未能載入檔案或程式集“Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一個依賴項。未提供所需的模擬級別,或提供的模擬級別無效。 (異常來自 HRESULT:0x80070542)
這個報錯對應的英文是:Either a required impersonation level was not provided, or the provided impersonation level is invalid.
相關的錯誤編號是:ERROR_BAD_IMPERSONATION_LEVEL
你的web.config裡面如果配置了impersonate,那麼會很容易遇到這個問題。
解決辦法有三個:
1、用管理員許可權執行visual studio,這個最粗暴有效,就是每次都要用管理員許可權開啟vs有點麻煩。
2、去掉web.config裡面的impersonate配置,這個未必總能行得通,因為有時候就是需要impersonate。
3、給impersonate的使用者加上足夠大的許可權,這個許可權加起來有點麻煩,因為這個使用者需要能夠操作GAC。不一定能加上足夠的許可權。
我試過方法1和方法2,都好用。