我似乎在设计中遇到数据库优先多样性的问题。 我正在使用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?
谢谢!
答案 0 :(得分:0)
对于任何寻求答案的人来说,正确的设置是将entityID
对象上的外键(entity_detail
)列也设置为主键。
这种方式将是唯一的,但只有在存在(0..1
)时才需要
希望这会有所帮助!