实体框架4.1:级联删除数据库优先

时间:2011-07-20 15:58:58

标签: entity

我已将Cascade Delete添加到我的数据库中,但我在模型中没有看到此更新。如何确保我的模型为数据库优先模型启用了级联删除?

1 个答案:

答案 0 :(得分:2)

如果在数据库上设置了级联删除,那么您无需担心。删除主要对象将转换为

  1. EF告诉数据库“删除实体-foo - ”
  2. DB检查表-foo的所有依赖关系 -
  3. DB首先删除所有相关表中-foo-.ID的所有记录
  4. DB最后删除-foo(s) -
  5. 中的-foo-.ID

    如果您只在模型上进行级联删除而不是数据库,那将会更加麻烦,因为这意味着EntityFramework会尝试在运行时找出所有上述内容。

    如果你真的想确保级联删除,你可以在两个层中启用它,虽然这对我来说听起来不是一个好主意,因为一些数据“可能会消失”(因为它是级联删除的)来自EF州经理。

相关问题