我有一个包含许多实体和关系的复杂模式。我想定义一个可以撤消的逻辑删除操作。我考虑过为每个表添加“isDeleted”标志,但对我来说似乎很容易出错。我还考虑添加一个类似于原始模式的存档模式,并在每个删除操作中将数据移动到那里。这似乎需要为“删除”和“取消删除”操作编写大量代码(尤其是因为我想模拟逻辑删除的删除级联)。
最后,我不确定在哪里处理我正在使用 EF 的逻辑删除事件,因此我可以在代码中执行此操作,或者我可以在他的 DB 中使用删除触发器。
我会欣赏有关如何以优雅的方式实现逻辑删除的任何建议。谢谢。