此项目不支持脚手架 Visual Studio 2019

There are no scaffolders supported for this item Visual Studio 2019

我正在使用 Visual Studio 2019 版本 16.0.4,我尝试在 asp.net core 2.1(在 views 文件夹中)上创建一个视图或部分视图,但出现错误

There are no scaffolders supported for this item

然后我意识到这个问题发生在你的项目中有一个名为 "Pages" 的文件夹,我们将这个文件夹用于 razor pages 。

如果我删除了 pages 文件夹,那么视图脚手架就可以工作了。当我把它放回去时,它又坏了。

我不知道这是不是错误,但我需要在我的项目中同时使用页面和视图...

2019 年 7 月 31 日更新

我错了(第 24 次更新),请参阅对此 post 的评论,它显然仍然有问题,无论哪种方式,在这两种情况下,下面的原始答案仍然有效。

2019 年 7 月 24 日更新

如果您使用的是 Visual Studio 2019 的旧版本,下面的答案仍然有效,但是请注意,这个问题现在已经在更 up-to 日期的版本中得到修复:

https://developercommunity.visualstudio.com/content/problem/562039/there-are-no-scaffolders-supported-for-this-item-1.html


原答案

目前在 Visual Studio 2019 中存在针对此场景的已知错误。

GitHub 问题跟踪器上有一些半官方的建议,但并不总是有效。

MS 最终会修复它,目前似乎没有时间表。

但是现在,如果您右键单击并使用添加新项目:

然后选择你想要的项目类型(在我的例子中是剃须刀页面)

然后你会发现一切仍然按预期工作。该错误似乎只影响快捷菜单。

当我将 "Pages" 文件夹添加到我的 ASP.NET MVC 核心项目时,我在 visual studio 中看到了这个问题。 在我添加这个文件夹之前,脚手架工作正常,当我添加这个时,我看到了错误。 此外,当我删除 "Pages" 文件夹时,脚手架再次正常工作。 ;)

我通过从 3.x 降级 Microsoft.VisualStudio.Web.CodeGeneration.Design 版本 2.2.4 解决了这个问题。来自我的解决方案的 Nuget 包。 希望对大家有所帮助。

我创建了一个名为 Views 的文件夹,错误不再显示

None 以上解决了我的问题,所以我想我也会留下反馈。更新 .NET 版本为我解决了这个问题。我在 4.5 上移动到 4.5.2。为了对此进行测试,我使用 4.5.2 创建了一个相同类型的同级项目 (.NET MVC Web),并尝试再次创建脚手架项目,并且成功了。

我要么使用新项目来放置我的脚手架项目,要么尝试将我的原始项目升级到 4.5.2。我确信 4.5.2 以上的任何版本都可以正常工作,但由于服务器架构,我使用的是旧版本。

更新: 更新版本似乎并不能解决问题。所以这是添加一个新项目的行为......我不确定为什么。如果我发现了,我会再次更新。

我几周前检查过它,我猜它似乎已通过更新解决了。

不知道是不是我的问题,但是很相似...

我的解决方案是更新 NuGet.Frameworks

*我的问题: 例如,我创建了一个名为 AnyName 的方法,接下来我双击并添加新视图
Image1

所以,接下来我只是点击添加新的 Razor 视图 Image2

接下来启动脚手架创建新视图: Image3

但它无法创建视图并发送以下错误: there was an error running the selected code generator package restore failed (出现错误运行选择的代码生成器包恢复失败)

我正在使用: VSCommunity 2019 v16.7.2*

在 VS Community 2022 v17.0.2 上出现此错误 项目 ASP.NET 核心 Web 应用程序 MVC (6.0)

使用选项时添加控制器。 error

使用添加新项目然后选择特定文件时工作正常。

这种情况非常罕见,但如果您不小心创建了 F# 项目而不是 C#,就会导致问题。由于某种原因,它将以某种方式附加到 C# 解决方案,将其排除并使用 Microsoft.VisualStudio.Web.CodeGeneration.Design 版本 3.1.5 (net5.0) 创建新的 C# 应用程序将解决此问题。