Web部分查看用户访问的最后文档

时间:2009-10-08 13:39:25

标签: c# sharepoint wss

我被要求在Sharepoint中创建一个Web部件,列出用户在网站集中访问的最后10个文档。

我的客户希望用户能够快速访问文档,这样他们就不必挖掘文件夹结构来查找文档,因为用户大多数时间一遍又一遍地访问同一文档。

问题在于我不确定是否可能,因为我似乎无法在SPListItemSPItemSPFile找到任何可以帮助我解决此问题的属性任务。有没有人做过任何类似的事情或知道任何可以帮助我验证这是可行的解决方案?

2 个答案:

答案 0 :(得分:1)

此信息在SharePoint中的文件和项目对象上不可用。他们只能告诉您创建日期和上次修改日期。

但是,一个选项可能是打开网站集的审核日志并查询该日志。但是要注意性能,因为审计日志可能会变大,使得跨所有数据的实时查询非常缓慢。最好创建一个后台作业,经常在审计日志中查询新条目并更新上次访问的文档列表。

答案 1 :(得分:1)

建议开发一个拦截每个文档下载的HTTP模块。 将信息存储在自定义列表中,文档ID和用户名。 (也许更多的元数据,如网站集名称,网站名称,列表名称等)

在自定义列表中提供仅保存最后10个项目的机制。

将内容查询Web部件添加到您的页面,该页面根据用户名查询自定义列表并显示项目,即最近访问的10个文档。