有时候编译asp.net会遇到奇怪的错误:web
生成 (web): 未能加载文件或程序集“Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。未提供所需的模拟级别,或提供的模拟级别无效。 (异常来自 HRESULT:0x80070542)asp.net
这个报错对应的英文是:Either a required impersonation level was not provided, or the provided impersonation level is invalid.ide
相关的错误编号是:ERROR_BAD_IMPERSONATION_LEVEL
ui
你的web.config里面若是配置了impersonate,那么会很容易遇到这个问题。spa
解决办法有三个:.net
一、用管理员权限执行visual studio,这个最粗暴有效,就是每次都要用管理员权限打开vs有点麻烦。code
二、去掉web.config里面的impersonate
三、给impersonate的用户加上足够大的权限,这个权限加起来有点麻烦,由于这个用户须要可以操做GAC。不必定能加上足够的权限。
io
我试过方法1和方法2,都好用。编译