C# 生成的Razor视图文件无法识别模型类

C# 生成的Razor视图文件无法识别模型类,c#,razor,asp.net-core,visual-studio-code,asp.net-core-mvc,C#,Razor,Asp.net Core,Visual Studio Code,Asp.net Core Mvc,当我使用VS代码构建和运行dotnet运行我的ASP.NET核心MVC项目时,我收到以下两条错误消息: obj/Debug/netcoreapp2.1/Razor/Views/Product/List.g.cshtml.cs28,88: 错误CS0246:无法找到类型或命名空间名称“ProductsListViewModel” 找不到缺少using指令或程序集 参考[/Users/pedram/OneDrive-朋友之家 AB/visualstudioonmacprojects/SportsSt

当我使用VS代码构建和运行dotnet运行我的ASP.NET核心MVC项目时,我收到以下两条错误消息:

obj/Debug/netcoreapp2.1/Razor/Views/Product/List.g.cshtml.cs28,88: 错误CS0246:无法找到类型或命名空间名称“ProductsListViewModel” 找不到缺少using指令或程序集 参考[/Users/pedram/OneDrive-朋友之家 AB/visualstudioonmacprojects/SportsStore/SportsStore.csproj]

obj/Debug/netcoreapp2.1/Razor/Views/Product/List.g.cshtml.cs128,71: 错误CS0246:无法找到类型或命名空间名称“ProductsListViewModel” 找不到缺少using指令或程序集 参考[/Users/pedram/OneDrive-朋友之家 AB/visualstudioonmacprojects/SportsStore/SportsStore.csproj]

构建失败。请修复生成错误并重新运行

当我浏览到上面提到的文件时,我意识到类ProductsListViewModel需要在两个位置使用其全名SportsStore.Models.ViewModels.ProductsListViewModel来寻址,以便正确构建项目。但这只能在下一次构建之前解决问题

在构建dotnetclean之前清理项目似乎也没有帮助

我无法控制obj文件夹中发生的事情。是什么导致了这个缺少命名空间的问题

更新:

/Views/Product/List.cshtml的内容


在.cshtml文件的第一行中,声明视图中使用的模型的类型。从错误消息中可以看出,ProductsListViewModel无法解析。要解决该问题,您至少有两种选择:

使用@model sportstore.Models.ViewModels.ProductsListViewModel,这是一个完全限定名FQN。 使用@using,如下所示:

@using SportsStore.Models.ViewModels
@model ProductsListViewModel
你应该选择哪一个,这主要取决于你的偏好

Visual Studio代码似乎不像Visual Studio那样支持Razor文件-它似乎有不错的语法突出显示支持,但似乎没有编译.cshtml文件以发现像您现在这样的编译错误


第一次修改的文件List.g.cshtml.cs是一个生成的文件,它是在处理.cshtml文件时生成的,不应修改。如果确实修改了它,它将在下次处理源.cshtml文件时被替换。

在.cshtml文件的第一行中,声明视图中使用的模型类型。从错误消息中可以看出,ProductsListViewModel无法解析。要解决该问题,您至少有两种选择:

使用@model sportstore.Models.ViewModels.ProductsListViewModel,这是一个完全限定名FQN。 使用@using,如下所示:

@using SportsStore.Models.ViewModels
@model ProductsListViewModel
你应该选择哪一个,这主要取决于你的偏好

Visual Studio代码似乎不像Visual Studio那样支持Razor文件-它似乎有不错的语法突出显示支持,但似乎没有编译.cshtml文件以发现像您现在这样的编译错误


第一次修改的文件List.g.cshtml.cs是一个生成的文件,它是在处理.cshtml文件时生成的,不应修改。如果您确实修改了它,它将在下次处理源.cshtml文件时被替换。

我不知道VS代码,但VS将编译,但如果您查看错误列表,它将显示缺少类。我不知道VS代码,但VS将编译,但如果您查看错误列表,该解决方案也适用于JetBrains Rider 2020.2.1。似乎Rider也受到同样的限制。该解决方案也适用于JetBrains Rider 2020.2.1。似乎骑手也受到同样的限制