EFCore 脚手架
Posted
技术标签:
【中文标题】EFCore 脚手架【英文标题】:EFCore scaffold 【发布时间】:2018-11-22 00:01:48 【问题描述】:我正在尝试使用脚手架创建模型:
dotnet ef dbcontext scaffold "DataSource=database.sqlite" Microsoft.EntityFrameworkCore.Sqlite -o Model
但是这个返回错误:
Could not scaffold the foreign key 'PoolsInDepartments(pools_id)'. A key for 'id' was not found in the principal entity type 'Pools'.
Could not scaffold the foreign key 'PoolsInDepartments(departaments_id)'. A key for 'id' was not found in the principal entity type 'Departments'.
我不明白 PoolInDepertaments 表中的错误在哪里。请检查我的数据库: https://pastebin.com/Mmi6fnrV
这个数据库的图表:
https://i.stack.imgur.com/TV7EB.png
【问题讨论】:
我正在上传sqlite3文件sendspace.com/file/hwixx7 【参考方案1】:试试这个命令:
Scaffold-DbContext "Filename=mydatabase.sqlite3" Microsoft.EntityFrameworkCore.Sqlite -OutputDir 模型
我从 EF Core 的第一个版本到新的 2.1 都使用它,它对我有用。
【讨论】:
以上是关于EFCore 脚手架的主要内容,如果未能解决你的问题,请参考以下文章
将 EF Core 搭建到现有 DbContext 的脚手架
如何解决在 Linux(Ubuntu 18.04)中进行 EF Core 数据库脚手架的“无法使用 Kerberos 进行身份验证”问题?有啥解决办法吗?