【发布时间】:2021-07-22 16:03:52
【问题描述】:
我有 3 个实体在 EF Core 中生成 Code First:User、Project 和 UserProject(多对多关系)。到目前为止,我在User 上使用了硬删除,这实际上是级联到关系中的。
有没有办法在 User 上实现软删除并硬删除其他人,而无需手动检查引用它的其他关系中的 isDeleted 标志?
有什么方法可以通过自定义操作触发 OnDelete/OnUpdate?
示例:将 OnDelete 定义为更新 isDeletedFlag,在这种情况下,我想对引用用户的每个其他实体执行硬删除/设置 null。
【问题讨论】:
-
为什么不把所有东西都软删除? (每次我混合这些方法时,我都希望后来我没有)
-
如果项目处于规划阶段,这将是一个好方法。最初使用硬删除,数据库已经完成,关系,很多,更新它们会有点痛苦。
标签: c# .net entity-framework entity-framework-core