Asp.net mvc 4 在VS2012中运行代码分析时出错

Asp.net mvc 4 在VS2012中运行代码分析时出错,asp.net-mvc-4,visual-studio-2012,oauth,code-analysis,Asp.net Mvc 4,Visual Studio 2012,Oauth,Code Analysis,当我尝试编译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.N

当我尝试编译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网页\v2.0\assembly\Microsoft.Web.WebPages.OAuth.dll。[错误和警告](全局)

CA0001运行代码分析CA0001时出错:读取模块“Microsoft.Web.WebPages.OAuth”时遇到以下错误:无法解析程序集引用:DotNetOpenAuth.AspNet,版本=4.0.0.0,区域性=中性,PublicKeyToken=2780ccd10d57b246。[错误和警告](全局)


我最近在应用程序中添加了
DotNetOpenAuth.AspNet
包,它似乎与此相关。我已经清理、重建、打开/关闭程序、卸载/重新安装软件包,但错误依然存在。

前几天我遇到了同样的问题并报告了它

我也遇到了这个问题

不要将DOA升级到4.1

看起来aspnet dll引用了特定的版本。虽然.nuspec文件说4.0+还可以

解决方案:

卸载软件包-强制每个DotNetOpenAuth软件包(core/aspnet/oauth/openid等)


安装软件包DotNetOpenAuth.AspNet-版本4.0.4.12182

问题于21日报告。2012年9月。()

它于5日关闭。2013年6月,信息如下:

MVC的下一个版本将不依赖于DotNetOpenAuth。使用下面推荐的解决方法


因此,我使用了变通方法来解决问题:

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


看看姚明的答案。我发现的唯一解决方案实际上可以解决这个问题。

我也有同样的问题。虽然代码分析问题已得到修复,但由于以下错误,web应用程序无法运行

无法加载文件或程序集“DotNetOpenAuth.AspNet”或其依赖项之一。定位的程序集清单定义与程序集引用不匹配。(HRESULT的例外:0x8013100)

在卸载过程中,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>


您检查过项目中的参考资料了吗?是的-没有遗漏任何内容。正如我提到的,我已经删除并重新安装了几次包/引用。不走运:(我刚才输入的是同一个问题。Uninstall-Package dotnetopenauth–RemoveDependencies是一种更快的方法