建数据库需要规避的问题

今天在项目中遇到一个问题,我有一个商品表,还有一个商品扩展属性表,两张表是一对一关系,因为扩展表是新加的,

所以就想着不修改原来的产品表,而直接去拓展表(子表)里增加一个商品外键。

 

可是后面在做数据库映射的时候出现了问题,使用映射语句如下:

            this.HasOptional(p => p.ProductExt);

可是EF生成的时候报了错,它会自动去主表寻找字表的外键,可是我们没有主表里是没有外键的,只有字表有一个主表ID外键。

如果非要加上子表外键的话,则不能实现主表对子表一对一关系,只能实现一对多。

后面尝试过后,最终采用在主表增加子表外键字段的方式,实现一对一关系映射。

posted @ 2018-06-26 10:42  !opts  阅读(130)  评论(0编辑  收藏  举报