未能加载文件或程序集“System.Web.Http, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.IO.FileNotFoundException: 未能加载文件或程序集“System.Web.Http, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。
源错误:
执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。
这个错误, 调试了我大概4个小时:
解决方案:
0. 首先如果你能直接在工具→NuGet包管理器→程序包控制台中输入 Update-Package Microsoft.AspNet.WebApi -reinstall, 回车后不报错的话, 可以进行直接更新. 但是我的报错了, 所以只能按照下面的方法进行
1. VS2015→工具→NuGet包管理器→管理解决方案的NuGet程序包→浏览, 输入Microsoft.AspNet.WebApi, 然后右侧选择一个项目安装:
2. 在web.config中的runtime的assemblyBinding 节点下添加如下内容:
<dependentAssembly> <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="5.0.0.0" /> </dependentAssembly>
3. 清理解决方案→重新生成→运行