9

我刚刚将我的 ASP MVC 3 应用程序从预览版升级到了 beta 版。在预览中一切正常,但是一旦我升级了奇怪的事情就开始发生了。

我收到此错误消息:

编译器错误消息:CS0234:名称空间“System.Web”中不存在类型或名称空间名称“Helpers”(您是否缺少程序集引用?)

源文件:c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\1512250b\962d050c\App_Web_index.cshtml.a8d08dba.kncxiw31.0.cs 行:19

我试图完全重建应用程序,并清除临时 asp.net 文件,但没有任何效果。我的解决方案构建成功,构建时没有错误。但是当我尝试打开网站时,我得到了这个错误。

这些是我引用的 dll:

替代文字

版本信息:Microsoft .NET Framework 版本:4.0.30319;ASP.NET 版本:4.0.30319.1

报错信息截图:

替代文字

有什么想法吗?

4

3 回答 3

14

经过大量搜索,我在ASP.NET MVC 3 发行说明中找到了一些答案。有一个名为将 ASP.NET MVC 2 项目升级到 ASP.NET MVC 3的部分告诉您该怎么做:

将以下行添加到您的<assemblies>部分中web.config

<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, 
     PublicKeyToken=31BF3856AD364E35" />

<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral,
     PublicKeyToken=31BF3856AD364E35" />
于 2010-10-20T16:04:58.797 回答
10

问题是您需要在 System.Web.Helpers 引用上将 Copy Local 属性设置为 true。

于 2012-08-10T10:30:25.393 回答
2

确保 System.Web.Mvc 程序集指向正确的版本:

C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll

并且 System.Web.Helpers 还:

C:\Program Files\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies\System.Web.Helpers.dll

在 Beta 3 中,System.Web.Helpers是单独下载的,因此请确保您已安装AspNetWebPages.msi.

于 2010-10-20T09:52:31.090 回答