我有这样的事情:
public class Gadget {
public int Id { get; set; }
public string Name { get; set;}
public int SuperHeroId { get; set; }
}
public class SuperHero {
public int Id { get; set; }
public virtual ICollection<Gadget> Gadgets { get; set; }
}
请注意,虽然小工具由超级英雄“拥有”(因此数据库中有一个 FK),但我的域模型在该方向上没有硬引用。
当我删除一个超级英雄时,我也想删除他们所有的小工具。我该怎么做?
我的研究表明,如果我有那个参考,它会像
mapping.Entity<SuperHero>()
.HasMany(x => x.Gadgets)
.WithRequired(x => x.SuperHero) //this is the part I can't do
.WillCascadeOnDelete();
但如前所述,这不适用于我的域模型。