【问题标题】:System.Web.Mvc missing error while building ASP.NET MVC 3 using NAnt使用 NAnt 构建 ASP.NET MVC 3 时 System.Web.Mvc 丢失错误
【发布时间】:2012-01-29 04:19:33
【问题描述】:

我的 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\assembly\GAC_MSIL\System.Web.Mvc\v4.0_3.0.0.0__31bf3856ad364e35\

。我在这里想念什么?为什么 NAnt 找不到这个文件?除了将程序集文件复制到本地bin中之外,没有其他方法吗?

【问题讨论】:

    标签: asp.net-mvc-3 nant


    【解决方案1】:

    您使用哪个版本的 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 运行时二进制文件的任何更改。”

    【讨论】:

    • 感谢 Rami,但团队现在已决定对 MVC 程序集进行 Bin 部署。
    【解决方案2】:

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

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

    请注意,如果您的 VS 安装在 C: 中:(有时 MVC 不在大家谈论的默认位置,我的意思是位于 C: 驱动器中的“Reference Assemblies”文件夹。

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

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

    希望这篇文章对您有所帮助。

    【讨论】:

    • 添加了来自程序文件的引用,它的作用就像一个魅力,谢谢!
    • 现在太好了! :D @史蒂夫
    【解决方案3】:

    这是我的答案 -

    最好的方法是使用 NuGet 包管理器。 只需更新下面的 MVC 包,它应该可以工作

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

    【讨论】:

      【解决方案4】:

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

      【讨论】:

        【解决方案5】:

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

        这对我有用

        【讨论】:

          猜你喜欢
          • 2014-12-19
          • 2011-12-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-05-05
          相关资源
          最近更新 更多