好吧,这应该很容易,但我一直在抓狂。这是我的 POCO(与机器零件有关,因此零件可以包含在父零件中):
public class Part
{
public int ID { get; set; }
public string Name { get; set; }
public Part ParentPart { get; set; }
}
创建数据库表时,列名称为“ID”、“Name”和“PartID”。如何将最后一列的名称更改为“ParentPartID”?
基本上,您想重命名中的外键独立协会这是执行此操作的流畅 API 代码:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Part>()
.HasOptional(p => p.ParentPart)
.WithMany()
.IsIndependent()
.Map(m => m.MapKey(p => p.ID, "ParentPartID"));
}
然而,由于 CTP5 中的错误,此代码在自引用关联(这是您的关联类型)。解决方法是将您的关联更改为外键关联如下:
public class Part
{
public int ID { get; set; }
public string Name { get; set; }
public int ParentPartID { get; set; }
[ForeignKey("ParentPartID")]
public Part ParentPart { get; set; }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)