EF Core 2.1与表具有一对多关系

时间:2020-05-15 02:41:39

标签: .net-core ef-core-2.1

请考虑以下关系:

VALID_RTO可以分配给零个或多个CAP_ZONE。 CAP_ZONE必须属于一个唯一的VALID_RTO

VALID_RTO +-------o< CAP_ZONE

**CAP_ZONE table**
cap_zone_id NUMBER(10)
cap_name VARCHAR2(25)
rto_id NUMBER(10)     <--- "FK" back to the VALID_RTO table


**VALID_RTO view**
rto_id NUMBER(10)
rto_name VARCHAR2(10)
rto_descroption VARCHAR2(25)

VALID_RTO在另一个Oracle模式中,并且可以作为只读使用。我们将其引用为CAP_ZONE表所在的架构中的视图。只有CAP_ZONE表是可更新的。

如何设置实体对象?我假设VALID_RTO将在DbContext中设置为DbQuery <>集合,因为它是只读的,并且设置为视图。但是如何在VALID_RTO基类中设置引用以返回所有VALID_RTO实例分配给的CAP_ZONE,因为这是一个查询对象,并且没有外键关系设置?

相反,CAP_ZONE应该具有对已分配给它的单个VALID_RTO记录的引用。再次,我将如何在CAP_ZONE类中进行配置以及如何在DbContext类中注册实体?

我们必须使用EF Core 2.1,因为我们使用的是Oracle数据库,因此Oracle的EF提供程序只能与EF 2.1一起使用。

这甚至可能吗?这是一个不好的设计吗?

感谢您的协助。我正在学习EF Core,并希望确保自己正确执行此操作。

0 个答案:

没有答案