尝试使用 Scaffold-DbContext 的问题

Posted

技术标签:

【中文标题】尝试使用 Scaffold-DbContext 的问题【英文标题】:Issue trying to Scaffold-DbContext 【发布时间】:2022-01-14 10:52:45 【问题描述】:

当我尝试从 MSSQL 服务器连接 Scaffold-DbContext 时,我能够正常连接,但我收到一个关于几周前从数据库中删除的表中的外键的错误。它看到的表称为 ServiceTicket,我有一个类似的表名为 ServiceTickets,并且我已确保所有外键都已正确设置。

我得到的确切错误:

The foreign key 'ServiceTypeId' cannot be added to the entity type 'ServiceTicket' because a foreign key on the same properties already exists on entity type 'ServiceTicket' and also targets the key 'ServiceTypeId' on 'ServiceType'.

我们在 db 中实际拥有的表名是 ServiceTickets 和 ServiceType

我也已经尝试删除并重新创建关系

【问题讨论】:

EF 可能正在复数您的表名。 发布确切的错误、相关的表名和外键定义 【参考方案1】:

在对所有键进行三次检查后,确实有第二个键用于导致问题的同一关系。

【讨论】:

以上是关于尝试使用 Scaffold-DbContext 的问题的主要内容,如果未能解决你的问题,请参考以下文章

EFCore Scaffold-DbContext 可以生成自定义模型名称吗?

为啥 EF Scaffold-DbContext 命令在针对 net6.0 报告“未找到设计时服务”后会引发 NRE?

MVC SqlServer 数据库登录失败

在 .NET Core 3.1 中执行存储过程

EF Core 入门

在一个DBContext中处理多个模式