2012-05-11 50 views
2

我正在使用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

+0

显示至少一个父/子对的定义。 –

回答

2

只要确保从儿童到父母的关联不允许空值。

然后删除父项。