级联删除所有虚拟集合

时间:2012-05-11 09:04:28

标签: c# entity-framework

我正在使用MVC3来构建Web应用程序。在这个应用程序中,我有一个实体,它有x个虚拟集合,它们本身可以容纳多个虚拟集合。

有没有一种方法可以“模拟”级联删除,这样当我删除顶层实体时,它首先尝试递归删除子集合实体。

我知道我可以使用数据库级联选项(以及一些触发器)来实现它,但我真的想知道这是否可以在C#中使用。

编辑: 顶级实体:

public class Tournament {
    public int TournamentID { get; set; }
    // other properties
    public virtual ICollection<Official> Officials { get; set; }
}

子:

public class Official {
    public int OfficialID { get; set; }
    // other properties
    public virtual ICollection<Matches> Matches { get; set; }
}

因此,当我删除Tournament实体时,它也应该删除Officials,并在Officials中删除Matches

1 个答案:

答案 0 :(得分:2)

确保从子级到父级的关联不允许空值。

然后删除父级。