使用NAnt构建ASP.NET MVC 3时System.Web.Mvc缺少错误

时间:2011-12-28 12:53:22

标签: asp.net-mvc-3 nant

我的MVC 3项目正在使用Visual Studio 2010 + MVC 3在我的开发机器上成功构建。在构建服务器中,未使用VS2010并且我安装了“ASP.NET MVC 3工具更新”。我还下载了NAnt并使用TortoiseSVN来检查除bin目录之外的所有文件。

但是在使用Nant default.build构建时,我遇到了构建错误

  

'命名空间中不存在类型或命名空间名称“Mvc”   '的System.Web'

(你错过了一个程序集引用吗?)。与'Controller','ActionResult','GlobalFilterCollection'等相同(无法找到类型或命名空间)。

我可以在

中看到System.Web.Mvc.dll
  

C:\的Windows \ Microsoft.NET \组件\ GAC_MSIL \ System.Web.Mvc \ v4.0_3.0.0.0__31bf3856ad364e35 \

。我在这里错过了什么?为什么NA​​nt找不到这个文件?除了将汇编文件复制到本地bin之外没有其他方法吗?

5 个答案:

答案 0 :(得分:11)

我遇到了同样的问题,但无法找到System.Web.MVC引用程序集。

终于找到了,它位于以下位置。

请注意,如果您的VS安装在C:中(有时MVC不在每个人都在谈论的默认位置,我的意思是位于C:驱动器中的“参考装配”文件夹。< / p>

如果不存在,那肯定应该在这里:

程序文件(x86) - &gt; Microsoft ASP.NET - &gt; ASP.NET MVC 2 - &gt;程序集System.Web.Mvc.dll

希望这个有用。

答案 1 :(得分:3)

这是我的答案 -

最好的方法是使用NuGet包管理器。 只需更新下面的MVC包,就可以了。

Why is System.Web.Mvc not listed in Add References?

答案 2 :(得分:3)

如果您使用NuGet包,则需要更新MVC包。这对我有用。

答案 3 :(得分:1)

如果您从NuGet包安装了MVC包。只需卸载软件包并重新安装即可。

它为我工作

答案 4 :(得分:0)

您使用哪个版本的msbuild来构建Web项目? Web项目是否引用了System.Web.Mvc.dll的特定版本或文件路径?

下载并安装ASP.NET MVC 3:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=4211

根据:http://weblogs.asp.net/scottgu/archive/2011/05/03/asp-net-mvc-3-tools-update.aspx
“ASP.NET MVC 3工具更新仅包括Visual Studio工具改进和默认项目模板更改 - 它不包括对ASP.NET MVC 3运行时二进制文件的任何更改。”