【发布时间】:2016-08-15 18:49:34
【问题描述】:
我正在尝试从数据库生成类(EntityFramework 的数据库优先方法)。
为方便起见,我或多或少地在学习本教程: https://docs.efproject.net/en/latest/platforms/full-dotnet/existing-db.html
我正处于在 Visual Studio 包管理器控制台中运行这行代码的等效项:
Scaffold-DbContext "Server=(localdb)\mssqllocaldb;Database=Blogging;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -Verbose
这行代码正在生成错误(打开 -Verbose 模式):
Using startup project 'EFSandbox'.
Using project 'EntityFrameworkCore'
Build started...
Build failed.
我没有看到其他产生任何有意义输出的选项,也没有看到有关此特定错误的文档。如果它有帮助的话,这个项目目前没有 project.json 文件。一切都在 .csproj 文件中,我没有手动编辑。
【问题讨论】:
-
重新编译整个解决方案时是否收到任何错误/警告?
-
@Ignas 做到了,是的,我得到了在重新编译之前不存在的依赖错误,而且不应该存在。我没有尝试与之抗争,而是重新制定了解决方案。不过,我现在有一个新问题。我想我应该稍后再提出一个新问题(如果这个问题相似的话),而不是编辑这个问题。
-
认为您的问题是您必须有一个 project.json 才能声明 EFC 工具。尝试以正确的项目类型重写,这可能会生成一个 json。
-
对我来说,它的工作原理是确保整个解决方案(不仅仅是项目)在发出脚手架命令之前成功构建。
-
我想简要更新一下这个问题,因为它引起了很多关注 - 这是在比当前可用的版本更旧的 EF Core 上构建的,在遇到其他几个问题之后,我们结束了解决方案继续使用 EF6,直到 Core 有更多时间安定下来。甚至 EF6 也存在问题,但我们的设置要可靠得多。