【发布时间】:2020-01-11 04:19:41
【问题描述】:
我在我的应用程序中使用了多个 dbContext(IdentityDbContext 和 DBContext)。 由于某些原因,我一定会使用多个 DBContext,因为我知道您会回答我只使用 DBContext 作为从 IdentityDbContext 继承 DBContext(我不会这样做)。
无论如何,我在 DBContext 中有一个名为 Patient 的表,它与 User 具有外键关系。并且用户属于 IdentityDBContext。
现在,当我从 DBContext 生成迁移脚本时,它会为用户添加 DDL;虽然在 IdentityDBContext 迁移期间已经创建了 User 表。 看来,迁移关系中缺少一些东西。我想创建外键 Patient.UserId ==> User.UserId,但不要创建 User 表 ddl 脚本。
谁能帮助我如何定义在另一个 DBContext 中定义的两个实体之间的这种关系。
【问题讨论】:
-
您使用的是哪个商店?如果是 SQL Server 或类似的,您可以在两者之间创建一个数据库链接并设置一个视图,以便您可以将对象实际映射到您的上下文。
-
感谢@Fenixil。我检查了建议的解决方案,但它对我不起作用。即忽略也将忽略外键,在我的情况下,第二个禁用迁移的建议不是答案
-
感谢@jcruz。我正在使用 SQL Server。您能否解释一下数据库上下文之间的数据库链接将如何帮助我。我从未在 EF 中应用 DB 链接。让我看看它是否能解决我的问题
标签: c# .net-core entity-framework-core