【问题标题】:The type or namespace name 'Mvc' does not exist in the namespace 'System.Web' (are you missing an assembly reference?)命名空间“System.Web”中不存在类型或命名空间名称“Mvc”(您是否缺少程序集引用?)
【发布时间】:2019-12-05 11:48:09
【问题描述】:

每当我尝试编译我的 VS2015 应用程序时,都会出现一长串错误,例如:

The type or namespace name 'Mvc' does not exist in the namespace 'System.Web' (are you missing an assembly reference?)

但是,当我双击错误查看文件时,它会打开文件,稍有延迟,然后清除所有错误。

如果我继续尝试再次构建,我会得到相同的错误列表,并且该过程会重复。

更新 我忘了说我试过了:

  1. 遵循其他几个 SO 问题中的建议 - 无济于事
  2. 确保将 dll 设置为复制到本地
  3. 删除和重新添加引用
  4. 从应用程序中删除 dll 并重新添加它们
  5. 清理和重建应用程序
  6. 重新启动应用程序和我的电脑

这是什么原因造成的?如何消除它?

【问题讨论】:

  • 这可能是由于VS2015一直在后台执行繁重的任务,它无法处理您的项目的大范围。如果项目文件太多,尽量减少项目中的文件数量。
  • 你试过重启Visual Studio吗?您是否将任何文件从一个文件夹移动到另一个文件夹?
  • 在那长长的列表中,尝试向下滚动到看起来更像“真正的错误”(语法等)的内容。此外,您可能在一个项目中更新了一个包,而不是在相关项目中(不匹配)。如果所有其他方法都失败了,并且错误只是 没有意义,请按下该 nuke 按钮并简单地重新启动 VS(是的,我的意思是,这不是开玩笑)...Hth。
  • 您的 web.config 引用可能不正确。重新下载 nuget 包可能会修复
  • 难以置信,重新启动 Visual Studio 确实是答案。已经为此挣扎了3个多小时。带有 .NET 框架 4.6.01055 的 Visual Studio 社区 2015 更新 3。 System.Web.Mvc 版本为 5.2.3

标签: c# asp.net-mvc visual-studio-2015


【解决方案1】:
  • 重启 Visual Studio
  • 删除程序集引用并重新添加它
  • 清理并重新构建
  • 尝试从 nuget 包管理器安装 Microsoft.AspNET.MVC

【讨论】:

  • 我有其他 MVC 解决方案可以继续正常工作,所以我不认为 MVC 有问题。我以前尝试过所有其他方法。
  • 这通常不是影响所有 MVC 应用程序的问题,而是您的解决方案文件的路径或配置混乱导致项目中断。如果您尝试过这些步骤,包括从 nuget 重新安装 MVC,那么我的想法很抱歉。
  • 对我有用,我不得不强制删除 MVC、Razor 和 WebPages 的 nuget 包并重新安装它们。之后它起作用了。对我来说这不是机器的问题,有几台机器有这个问题。
  • 我在我的项目中遇到了同样的错误,结构是,1 个项目我有 edmx 并在另一个 Web 项目中获得参考。错误与结构有关吗?还是别的什么?我已经按照您提到的相同步骤进行操作,但仍然面临同样的问题。 @尼克
【解决方案2】:

在我的情况下,它只有在我在包管理器控制台中运行以下命令后才起作用

PM> Install-Package Microsoft.AspNet.Mvc

我的环境是:

1) Visual Studio 2017
2) Freshly created Angular 4 app
3) MVC 6 as a back end

【讨论】:

    【解决方案3】:

    尝试下载 System.Web.Mvc.dll 并将其复制到您的项目 bin 文件夹中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-01
      • 1970-01-01
      • 2015-02-14
      • 2017-05-04
      • 2018-07-15
      • 2021-08-12
      相关资源
      最近更新 更多