如何使用流畅的配置来配置实体框架,使其行为方式与使用属性相同:
public class Product
{
public int? ParentId { get; set; }
[ForeignKey("ParentId")]
public virtual Product Parent { get; set; }
}
如何使用流畅的配置来配置实体框架,使其行为方式与使用属性相同:
public class Product
{
public int? ParentId { get; set; }
[ForeignKey("ParentId")]
public virtual Product Parent { get; set; }
}
假设你想创建一个自引用实体,我假设你有一个这样的Product
类:
public class Product
{
public int Id { get; set; }
public int? ParentId { get; set; }
public virtual Product Parent { get; set; }
}
在上下文中,您需要实现该OnModelCreating
方法才能配置自引用。
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Product>().
HasOptional(e => e.Parent).
WithMany().
HasForeignKey(m => m.ParentId);
}