我刚刚在我的农场中的每个站点上提取了 SPSite.LastContentModifiedDate 属性,并注意到所有 315 个站点都在 2013 年 5 月 7 日上午 12:01:21 和 2013 年 5 月 7 日上午 1:20:00 之间更新。
考虑到当时不太可能发生这种情况,我正在寻找有关为什么要更新该数据的解释。
我还需要一个更可靠的属性来指示用户上次更新某些内容的时间。
谢谢您的帮助
我刚刚在我的农场中的每个站点上提取了 SPSite.LastContentModifiedDate 属性,并注意到所有 315 个站点都在 2013 年 5 月 7 日上午 12:01:21 和 2013 年 5 月 7 日上午 1:20:00 之间更新。
考虑到当时不太可能发生这种情况,我正在寻找有关为什么要更新该数据的解释。
我还需要一个更可靠的属性来指示用户上次更新某些内容的时间。
谢谢您的帮助
这是因为场中的默认计时器作业经常更新。
参考:
http://technet.microsoft.com/en-us/library/ff808317(v=office.14).aspx
您可以使用 Web 对象的 LastItemModifiedDate 属性。
此属性的值取自 SPSite 所在的内容数据库中的 AllSites 表。有两列 AllSites.LastContentChange 和 AllSites.LastSecurityChange。
AllSites.LastContentChange 列由存储过程 proc_QMChangeSiteDiskUsedAndContentTimestamp 更新。
为了存储过程被更新站点相关数据的其他过程使用。您可以在下面找到调用 proc_QMChangeSiteDiskUsedAndContentTimestamp 的存储过程。这是此类程序的屏幕截图:
这些存储过程可以被上面列出的计时器作业使用。proc_SetWebMetainfo - 在您更新 SPWeb.AllProperties 集合时调用 proc_UpdateDiskUsed - 每次向站点提供内容类型或字段时调用。
这可能是 Microsoft 承认的 SharePoint 2013 中的错误,并根据以下用户语音条目进行了更正(在某些情况下):