【发布时间】:2021-11-03 07:12:40
【问题描述】:
我有一个带有 2 个上下文的 MVC .Net Core 3.1 项目。一个是标准身份上下文,另一个是应用程序上下文。 它们在服务器上存储为 2 个独立的数据库。
在我的应用程序中,我有一个实体“Project”,它有一个“ProjectLeadUserId”字段,我在其中存储来自 AspNetUsers 的该用户的 ID。
当我列出所有打开的项目时,我想显示来自 AspNetUsers 的“用户名”,而不是与每个项目相关的 GUID。
通常我会在两者之间有一个外键,所以在我看来我可以做类似的事情:
project.ProjectLead.UserName
但我无法确定如何在我的实体中设置它,因为 FK 将在不同的上下文中。
这可能吗,还是我通过分离身份和应用程序上下文给自己造成了问题?
编辑: 忽略外键问题,因为我可以在应用程序逻辑中处理它。当涉及多个上下文时,有没有办法加载相关数据。 例如获得项目列表后,是否可以使用 AspNetUsers.Id 和 Project.ProjectLeadUserId 加载相关的 AspNetUsers 数据?
【问题讨论】:
标签: asp.net-mvc asp.net-core entity-framework-core asp.net-identity