首页 > 解决方案 > EntityFrameworkCore 单个导航器,用于具有同级实体的不同表

问题描述

这个问题可能看起来很傻,我什至不知道这是否是数据库设计的好习惯,但是,我的项目有 2 个独立的“产品”,它们本质上是克隆并共享相同的 API,但数据类型略有不同。我有一个通用的身份验证系统,其中用户表位于“通用”模式中。

我有 2 个类似的模型,每个产品一个扩展一个抽象基类(我们称之为实体)。这些模型在产品的架构(a 和 b)下有自己的表,例如 a.SubEntity、b.SubEntity。它们略有不同(2 或 3 列差异)。公共用户实体与这两个实体具有一对多的关系。

现在这是我设想它的工作方式:我可以根据用户请求确定产品模式名称(a 或 b),并将其放在上下文中。如果从产品 A 请求用户,我希望用户中的实体集合仅包含来自 a.Entity 表的相关结果,否则它应该是来自 b.Entity 表的相关结果。

这些产品永远不会共享数据,所以我认为将两个实体放在同一个表中并结合所有列将是一种浪费(这是错误的吗?),是否应该在映射配置文件中完成?

标签: c#sqlasp.netpostgresqlentity-framework-core

解决方案


推荐阅读