[英]EntityFramework Core 3.0 Fluent API Many-to-many relationship builder creating extra foreign key columns
[英]0..1 to many relationship with Fluent API with EntityFramework Core
我需要使用Fluent API和EntityFramework Core声明0..1到很多关系。 现在我有一个一对多的关系,我不知道如何将其更改为一个从0..1到许多的关系。
modelBuilder.Entity<Item>()
.HasOne(c => c.Constraint)
.WithMany(p => p.Constraint)
.HasForeignKey(p => p.Growid)
.HasPrincipalKey(b => b.Growid);
任何帮助将不胜感激。
从文档 :
如果您的实体类中具有外键属性,则根据外键属性是必需的还是可选的来确定关系的必要性
更多信息 :
如果属性包含空值有效,则认为该属性是可选的。 如果null不是要分配给属性的有效值,则将其视为必需属性。
因此,为了将关系的性质从要求的(1到许多)更改为0 .. 1到许多,您需要使外键为空。 您可以在域实体中执行此操作:
public class Item
{
public int Item Id { get; set; }
public string Name { get; set; }
public int? ForeignKeyItemId { get; set; }
public ForeignKeyItem ForeignKeyItem { get; set; }
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.