脚手架失败,因为RazorPageWithContextTemplateModel不包含ViewName的定义?

时间:2018-09-20 15:37:57

标签: c# asp.net razor scaffolding asp.net-core-2.1

我有一个ASP.NET Core Razor Pages项目,该项目可以在脚手架上正常工作,直到我升级到.NET Core 2.1。现在,当我尝试脚手架时,出现以下错误:

'Microsoft.VisualStudio.Web.CodeGenerators.Mvc.Razor.RazorPageWithContextTemplateModel' does not contain a definition for 'ViewName'
   at Microsoft.VisualStudio.Web.CodeGeneration.ActionInvoker.<BuildCommandLine>b__6_0()
   at Microsoft.Extensions.CommandLineUtils.CommandLineApplication.Execute(String[] args)
   at Microsoft.VisualStudio.Web.CodeGeneration.ActionInvoker.Execute(String[] args)
   at Microsoft.VisualStudio.Web.CodeGeneration.CodeGenCommand.Execute(String[] args)

Google并没有给我太多信息,该错误甚至没有指向我项目中的特定文件。我在模板中搜索了ViewName的所有实例,并且仅在@ Model.ViewName的上下文中使用了它。不太确定从哪里可以看到。有任何想法吗?

也许我的模板已过期?但是,那我可以在哪里买到新的东西?

1 个答案:

答案 0 :(得分:0)

好的,事实证明2.1中没有Razor页面模板的ViewName。

您需要对\ Templates \ RazorPageGenerator \文件夹中所有文件(从“ Model.ViewName”到“ Model.RazorPageName”)进行查找和替换。

那之后,我的脚手架效果很好。但我确实希望最初的错误使我对实际问题有所了解。