首页 > 解决方案 > 命名空间“Microsoft.AspNetCore”中不存在类型或命名空间名称“Mvc”(您是否缺少程序集引用?)

问题描述

主要问题

以上只是我的 C# 项目中超过 1k+ 错误之一。我正在使用带有 Catalina 10.15.6 的 2017 MacBook Pro。和 VS 代码。我拥有的 dotnet-SDK 是 3.1.401。我尝试卸载并重新安装它,但没有奏效。我有一个项目运行良好,然后昨晚我做了brew upgrade,今天我遇到了所有这些错误。当然,我尝试dotnet restore dotnet ef database update了这些命令成功地将包重新安装到项目目录并重新应用数据库迁移(这个项目使用 postgres 数据库以防万一这很重要),但它仍然存在所有这些错误。

重新创建新的开发 SSL 证书后,我能够让项目在 Firefox 上运行。

当我像往常一样尝试运行应用程序并连接到“https://localhost:5001”时,我得到了这个

“安全连接失败 连接到 localhost:5001 时发生错误。PR_END_OF_FILE_ERROR 无法显示您尝试查看的页面,因为无法验证接收到的数据的真实性。请联系网站所有者告知此问题。 "

我用以下命令修复了这个问题,dotnet dev-certs https --clean然后dotnet dev-certs https它开始在 Firefox 上正常工作,但我仍然在 VScode 中遇到了 1k+ 错误。

综上所述

该项目有效,我只是在 VSCode 中有大量错误,我不确定是什么原因造成的。

错误样本

标签: c#asp.netasp.net-mvc.net-core

解决方案


我有同样的问题,为我解决它的方法是:

  1. 从 .net CLI安装 Nuget 包 Microsoft.AspNetCore.Mvc.RazorPages ( https://www.nuget.org/packages/Microsoft.AspNetCore.Mvc.RazorPages/ ):

dotnet 添加包 Microsoft.AspNetCore.Mvc.RazorPages --version 2.2.5

  1. 更改您的 .csproj 文件,您必须添加 AddRazorSupportForMvc,使其看起来像这样:
      <PropertyGroup>
        <TargetFramework>net5.0</TargetFramework>
        <AddRazorSupportForMvc>true</AddRazorSupportForMvc>
      </PropertyGroup>

主要问题是 Microsoft.AspNetCore.MVC 命名空间不再存在。


推荐阅读