ASP.NET Web Pages检测到版本冲突:指定的版本为“1.0.0.0”,但bin中的版本为“2.0.0.0”。

49

今天更新了ASP.NET Web Helpers Library到2.0版本后,出现了这个错误。我不小心升级了它,但如果可能的话,我想现在解决这个问题。

检测到 ASP.NET Web Pages 的版本冲突:指定的版本为“1.0.0.0”,但 bin 中的版本为“2.0.0.0”。如果要继续,请从应用程序的 bin 目录中删除文件或在 web.config 中删除版本规范。

显然,web.config 文件中是出现问题的地方。

<add key="webpages:Version" value="1.0.0.0" />

有人了解 ASP.NET Web Helpers Library 包 2.0 的任何信息吗?我找不到发布说明。Nuget 网站上也没有。


我猜helpers库包2.0适用于Asp.Net web pages 2.0.0.0版本。我有一个链接,但不确定它是2.0还是之前的版本http://www.asp.net/web-pages/overview/more-resources/asp-net-web-pages-api-reference#Helpers。 - VJAI
谢谢提供文档。v2 标明了差异,这很好。但是,他们仍需要提供发布说明和一些预先警告。 - mare
3个回答

94

来自ASP.NET Web Pages版本冲突:您需要设置webpages:Version appSettings的适当值。在您的情况下,它必须是2.0.0.0。

<appSettings>
    <add key="webpages:Version" value="2.0.0.0"/>
</appSettings>

2
+1,真是个笑话,仅仅因为一个简单的app.config键就导致我们所有的Azure实例都崩溃了。 - Arran
更改框架可能会导致此错误。我遇到了大约10个这样的错误,从4.5.2降级到4.0以在我们的服务器上工作。 - Grungondola

8
似乎与2012年6月5日发布的Microsoft.Web.Helpers新版本(v.2.0)有关。
为了避免这个问题,首先我卸载了新版本(v.2.0):
PM> Uninstall-Package microsoft-web-helpers
然后采用以下命令安装稳定的旧版本:
PM> Install-Package microsoft-web-helpers -Version 1.15
我相信(也希望)这是很快就能被纠正(或正式评论)的事情...
更新
如果出于任何原因您需要旧的System.Web.WebPages.dll(在我的情况下被新版本覆盖并且没有出现在“添加引用”框中),它位于:
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies

我找不到 System.Web.Pages.dll。我认为应该是 System.Web.WebPages.dll。 - Brad Irby
显然,asp.net web helpers库包不再支持MVC - 也就是说,这个包的新版本(2.0+)不支持MVC,所以唯一的使用方法是使用1.15。安装1.15会导致包更新始终显示此包的更新,并且很容易错误地安装新版本并搞砸事情。这就是为什么我正在从我们的项目中删除对此包的依赖,并只使用其他方法来使用Twitter、Recaptcha等。对于ReCaptcha,甚至有一个独立的包。 - mare


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接