我继承了一个使用 LLBLGen Pro 作为 DB 层的项目。 DB 模型要求在删除条目时有一个标志(DeletedDate 设置为当前时间)。最后一位程序员忽略了这一要求,并在整个应用程序中使用了常规删除。
有没有办法将代码生成器设置为自动执行此操作,或者我是否必须为需要它的实体重载每个删除运算符?
我在 SQL Server 2005 中对任何软删除表的删除使用 INSTEAD OF 触发器来实现这一点。触发器设置删除标志并执行清理。该解决方案的优点在于它可以正确处理任何访问数据库的系统发出的删除操作。 INSTEAD OF 在 SQL Server 中相对较新,我知道 Oracle 中有一个等效的工具。
该解决方案还可以很好地与我们的 O/R 映射器配合使用——我创建了过滤掉软删除记录并映射这些记录的视图。这些视图也用于所有报告。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)