类型或命名空间名称“Mvc”不存在

问题描述 投票:0回答:6

我最近安装了 Visual Studio 2013。从网上下载了一个示例项目后,当我运行它时,它给了我以下错误 -

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

如何克服这个错误?

asp.net-mvc visual-studio-2013
6个回答
97
投票

您的错误根源可能是您没有引用MVC框架库。一个简单的解决方案是通过 Nuget 添加此引用。 MVC 库将安装在您的

bin
目录中,如果需要,所有引用都将添加到您的项目中。

浏览 MVC 包(工具 -> Nuget 包管理器 -> 管理解决方案的 Nuget 包)或使用 Nuget 控制台(工具 -> Nuget 包管理器 -> 包管理器控制台)输入

Install-Package Microsoft.AspNet.Mvc 安装它
。您可以在 AspNet.Mvc 的官方 Nuget 页面上找到更多信息。


47
投票

我的解决方案是简单地打开 nuget 包管理器控制台并运行命令

update-package -reinstall Microsoft.AspNet.Mvc


4
投票

有时,包版本冲突会成为一个问题,如果您安装了 MVC 包,则会显示命名空间错误。

这是我解决问题的方法:

  • 打开包管理器控制台(工具 > NuGet 包管理器 > 包管理器控制台)
  • 键入卸载包 Microsoft.AspNet.Mvc
  • 输入安装包 Microsoft.AspNet.Mvc

因此,这将为您的包提供一个全新的开始,您将拥有所有新的 MVC 引用并且没有错误。


1
投票

2022 年答案:

删除该行:

using System.Web.Mvc;

并替换为:

using Microsoft.AspNetCore.Mvc;

0
投票

在项目中包含 MVC 控制器和模型解决了该问题。


0
投票

我们有时会遇到这些错误消息,涉及已安装的 Nuget 软件包。当项目或解决方案从源代码管理提取到新文件夹时,通常会发生这种情况。 Visual Studio 显示错误:

命名空间“System.Web”中不存在类型或命名空间名称“Mvc”(您是否缺少程序集引用?)

但是,在代码中,带有
using System.Web.Mvc

的行下面确实有红色波浪线,但文本也是全白的,表明 VS

确实
识别了命名空间。 我们找到的解决方案是:

关闭 Visual Studio
  1. 导航到资源管理器中项目/解决方案的路径
  2. 遍历所有子文件夹并删除所有
  3. bin
  4. obj
    文件夹。
    在 Visual Studio 中重新打开项目/解决方案,然后重建所有项目。
© www.soinside.com 2019 - 2024. All rights reserved.