VS2012运行代码分析出错
Posted
技术标签:
【中文标题】VS2012运行代码分析出错【英文标题】:Error Running Code Analysis in VS2012 【发布时间】:2012-09-25 17:56:39 【问题描述】:我在尝试编译 MVC4 Web 项目时收到以下两个错误:
CA0058 错误运行代码分析 CA0058:找不到引用的程序集“DotNetOpenAuth.AspNet,版本=4.0.0.0,文化=中性,PublicKeyToken=2780ccd10d57b246”。此程序集是分析所必需的,并由以下位置引用:C:\Users\bflynn\Visual Studio Sites\mnp\bin\mnp.dll、C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\ v2.0\Assemblies\Microsoft.Web.WebPages.OAuth.dll。 [错误和警告](全局)
和
CA0001 错误运行代码分析 CA0001:读取模块“Microsoft.Web.WebPages.OAuth”时遇到以下错误:无法解析程序集引用:DotNetOpenAuth.AspNet,版本=4.0.0.0,文化=中性,PublicKeyToken= 2780ccd10d57b246。 [错误和警告](全局)
我最近将DotNetOpenAuth.AspNet
包添加到应用程序中,它似乎与此相关。我已经清理、重建、打开/关闭程序、卸载/重新安装包,但错误仍然存在。
【问题讨论】:
你检查过你项目中的引用吗? 是的 - 没有任何遗漏。就像我提到的那样,我已经删除并重新安装了几次包/引用。不走运:( 我只是在输入同样的问题。 【参考方案1】:我也遇到了。
不要将 DOA 升级到 4.1
看起来 aspnet dll 引用了特定版本。尽管它的 .nuspec 文件说 4.0+ 还可以...
解决方案:
Uninstall-Package - 强制每个 DotNetOpenAuth 包(核心 /aspnet /oauth/openid 等)
安装包 DotNetOpenAuth.AspNet -Version 4.0.4.12182
【讨论】:
卸载包 dotnetopenauth –RemoveDependencies 是一种更快的方法【参考方案2】:我用这个来解决这个问题:
1. Uninstall-Package Microsoft.AspNet.WebPages.OAuth –RemoveDependencies
2. Install-Package DotNetOpenAuth.AspNet -Version 4.0.4.12182
3. Install-Package Microsoft.AspNet.WebPages.OAuth
【讨论】:
【参考方案3】:前几天我遇到了同样的问题并报告了它http://aspnetwebstack.codeplex.com/workitem/443
【讨论】:
【参考方案4】:2012 年 9 月 21 日报告了问题。(http://aspnetwebstack.codeplex.com/workitem/443)
它已于 2013 年 6 月 5 日关闭,并带有以下信息:
MVC 的下一个版本将不再依赖 DotNetOpenAuth。使用以下推荐的解决方法。
所以我使用了解决方法https://***.com/a/12847018/1016682
【讨论】:
【参考方案5】:Code Analysis error Could not load file or assembly 'System.Net.Http, Version=2.0.0.0 in MVC4 Web API
见姚的回答。我发现的唯一真正适用于此的解决方案。
【讨论】:
【参考方案6】:我遇到了同样的问题。虽然代码分析问题得到了解决,但由于以下错误,Web 应用程序无法运行。
无法加载文件或程序集“DotNetOpenAuth.AspNet”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。 (HRESULT 异常:0x80131040)
原来在卸载过程中没有清理 web.config。 我必须在 runtime/assemblyBinding 部分下的 web.config 中删除以下dependentAssembly。
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="DotNetOpenAuth.Core" publicKeyToken="2780ccd10d57b246" />
<bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="DotNetOpenAuth.AspNet" publicKeyToken="2780ccd10d57b246" />
<bindingRedirect oldVersion="0.0.0.0-4.3.0.0" newVersion="4.3.0.0" />
</dependentAssembly>
<dependentAssembly>
</dependentAssembly>
</assemblyBinding>
</runtime>
详情可阅读http://www.bigcode.net/2013/07/error-running-code-analysis-in-vs2012.html
【讨论】:
以上是关于VS2012运行代码分析出错的主要内容,如果未能解决你的问题,请参考以下文章
VS2015运行VS2012的代码,出现这个错误,朋友的电脑运行没问题。