实体框架EDMX无效多重性?

时间:2018-11-08 22:43:41

标签: c# entity-framework multiplicity

我似乎在设计中遇到数据库优先多样性的问题。 我正在使用EF v5.0

我有两个具有以下数据库实体(例如psuedo类):

entity {
    long Id; //PK
    bool myProp;
}

entity_detail {
    long entityID; //FK to entity.Id
    string name;
    datetime entered;
}

当我从数据库更新模型时,它会在.tt中正确生成这些类,但是,它将entity_detail放入ICollection<entity_detail>类的entity中。

这是由于多重性,当我在EDMX中将多重性从Many (*)更改为Zero or One (0..1)时,它会出错并迫使我使用Many (*)

此方案的问题在于,如果entity_detail设置为 false ,则应该仅生成myProp(仅)(以避免db)

因此是0..1,有什么想法从数据库角度进行设置,以使EDMX在实体端将其更新为0..1,在entity_detail端将其更新为1?

谢谢!

1 个答案:

答案 0 :(得分:0)

对于任何寻求答案的人来说,正确的设置是将entityID对象上的外键(entity_detail)列也设置为主键

这种方式将是唯一的,但只有在存在(0..1)时才需要

希望这会有所帮助!

相关问题