对于我的个人网站,我目前正在开发CMS模块。 CMS模块的一个功能是页面修订历史记录。网站数据访问层正在实体框架代码优先开发。
我遇到的问题是:如何为页面分配“有效”修订版?
我目前看到两个选项:
Page
类/表将具有CurrentRevision
属性/字段,该字段将指向活动页面修订。
页面修订类/表将具有IsOnline
属性。
First
(或类似的东西)。实施此方法的最佳方法是什么?
答案 0 :(得分:1)
我没试过,但我会尝试使用第一种方法。 con看起来不是很大,因为两个数据库修改命令不是一个大问题(页面发布不是每秒100x的操作),在大多数情况下,如果你的CMS将提供页面编辑器,你将无论如何都需要它因为您将首先多次保存草稿(没有当前的在线版本),然后才会发布该页面(您将拥有当前的在线版本)。
如果您想提供对上一版本的访问权限,您仍然需要使用第二种方法,因为上一版本不一定是已发布的版本。