使用EF自动级联删除树节点

时间:2013-07-18 23:38:42

标签: sql-server asp.net-mvc-3 database-design ef-code-first

我有以下架构:

enter image description here

当我对每个模型执行删除时,我们也需要删除它的所有子项。 请建议我最好的方式。谢谢。

1 个答案:

答案 0 :(得分:1)

我不建议使用级联删除,因为你给计算机控制什么被删除/更新这是不好的做法。对于大型数据库模型和最敏感的数据,如果你删除它自己的东西,你将回答有关为什么数据丢失的问题。

删除所有子项的最佳方法是使用两种方法

public static class DeleteMenu()
private static class DeleteMenuItems()
删除菜单方法中的

首先调用DeleteMenuItems并删除所有子项然后删除其自身的菜单项