【发布时间】:2016-04-20 11:22:33
【问题描述】:
我在实体框架代码优先模型中定义了一个 1 对 0..1 的关系,如下所示:
public class Album
{
public int AlbumId { get; set; }
public int StampId { get; set; }
public Stamp Stamp { get; set; }
// other properties
}
public class Stamp
{
public int StampId { get; set; }
public int AlbumId { get; set; }
[Required]
public Album Album { get; set; }
// other properties
}
所以.. 一张专辑有 0..1 个邮票,一张邮票总是只有一张专辑。我在这里的配置效果很好。但是,当我查看数据库中生成了哪些列时,我有点不高兴:外键是在Album 表中创建的。这使得批量插入新邮票变得困难/缓慢,就像你总是需要更改Album 表并在那里更新StampId 外键。 (这意味着我需要更改跟踪来更改这些字段)
如何告诉 Entity Framework 在Stamp 表中创建外键?
我也不确定导航属性的声明在这种情况下扮演什么角色。你是否在两个方向上定义了这些属性是否重要?
【问题讨论】:
标签: c# mysql entity-framework ef-code-first foreign-key-relationship