如果您使用project.json然后按照这种方法。
使用代码生成器包,首先你需要把它列入project.json
像这个 -
"dependencies": {
"Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
"version": "1.0.0-preview2-final",
"type": "build"
},
"Microsoft.VisualStudio.Web.CodeGenerators.Mvc": {
"version": "1.0.0-preview2-final",
"type": "build"
}
},
"tools": {
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
"Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
"version": "1.0.0-preview2-final",
"imports": [
"portable-net45+win8"
]
}
}
现在你可以使用dotnet restore
命令恢复软件包。一旦完成,就可以脚手架控制器和视图使用下面的命令(或从Visual Studio如图正式指南) -
dotnet aspnet-codegenerator --project . controller -name HelloController -m Author -dc WebAPIDataContext
上述命令将产生与在根目录名HelloController中控制器并在Views文件夹下的Hello文件夹中查看CRUD选项。请注意,上面的示例命令将帮助您使用模型和EF创建具有读写操作的Controller。没有模型或dbcontext,它将创建空控制器。您可以在控制器参数之后使用命令行开关--help
以获得有关控制器生成器的更多选项。
谢谢你的建议。我修改了我的项目文件,就像你说的那样,我不再遇到那个错误,但现在我得到了一个不同的堆栈跟踪(请参阅更新后的描述)。 –
@JamesKo你能否在你的项目中提供软件包引用?我怀疑在项目中直接引用了一些可能会导致此问题的旧包。 – Prafull8495