我正在使用ASPNET Boilerplate开发一个项目,其中一些实体必须进行版本控制,因此它们有一个Id和一个versionNumber,其中同一个实体可以有多个版本,如:
RedirectMatch 301 ^/$ http://newsite.com.in/
所以我的问题是,如果有一种简单的方法可以做到这一点,比如软删除的实现,我可以拦截更新方法,以便创建一个新版本。
答案 0 :(得分:0)
您可以在DbContext
中覆盖ApplyAbpConcepts
,以便在修改Document
实体时创建新实体,然后重新加载原始实体,以便不保存其更改。
CancelDeletionForSoftDelete
做了类似的事情。
但这样做是行不通的,因为主键是唯一的。你可以create a composite key。
您还必须处理关系(即外键)以避免链接到多个版本。