博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
找出文档库里最多被浏览的文档
阅读量:5108 次
发布时间:2019-06-13

本文共 2357 字,大约阅读时间需要 7 分钟。

情景:如何查看某个文档库中那个文档被浏览的次数最多?

解决方案:对该文档库开启文档审核日志,然后查看审核就可以轻松找到,那么通过代码的方式是怎样实现的呢?如下:

 
1:   static void ReadAuditLog()
2:          {
3:              using (SPSite site = new SPSite("http://web.fly.com:2010"))
4:              {
5:                  using(SPWeb web=site.OpenWeb())
6:                  {
7:                      SPList list=web.Lists["DocLibA"];
8:                      SPUser user = web.CurrentUser;
9:                      SPAuditQuery query = new SPAuditQuery(site);
10:                      query.AddEventRestriction(SPAuditEventType.View);
11:                      query.SetRangeEnd(DateTime.Now);
12:                      query.SetRangeStart(DateTime.Now.AddMonths(-1));
13:                      query.RestrictToList(list);
14:                      SPAuditEntryCollection auditCol = web.Audit.GetEntries(query);
15:                      IDictionary
itemCol = new Dictionary
();
16:                      foreach (SPAuditEntry audit in auditCol)
17:                      {
18:                          if (string.IsNullOrEmpty(audit.EventData)||
19:                              (audit.DocLocation.EndsWith(".aspx")))
20:                          {
21:                              continue;
22:                          }
23:                          if (!itemCol.Keys.Contains(audit.DocLocation))
24:                          {
25:                              itemCol.Add(audit.DocLocation, 1);
26:                          }
27:                          else
28:                          {
29:                              itemCol[audit.DocLocation] += 1;
30:                          }
31:                      }
32:   
33:                      int maxCount = -1;
34:                      string itemLocation = string.Empty;
35:                      foreach (string id in itemCol.Keys)
36:                      {
37:                          if (itemCol[id] > maxCount)
38:                          {
39:                              maxCount = itemCol[id];
40:                              itemLocation = id;
41:                          }
42:                      }
43:   
44:                      Console.WriteLine("Item:{0},Count:{1}", itemLocation, maxCount);
45:                  }
46:              }
47:          }

此文章仅仅做个记录。

转载于:https://www.cnblogs.com/fanwenxuan/archive/2010/05/28/1746503.html

你可能感兴趣的文章
关于js中的作用域
查看>>
安装 Express
查看>>
EnterKey转换为TabKey(兼容IE,Firefox)
查看>>
包含列的索引:SQL Server索引的阶梯级别5
查看>>
Python 中的重点来了 : 迭代器 生成器
查看>>
myeclipse插件安装
查看>>
浙江省第十二届省赛 Beauty of Array(思维题)
查看>>
NOIP2013 提高组 Day1
查看>>
UVA 1602 Lattice Animals
查看>>
bzoj千题计划219:bzoj1568: [JSOI2008]Blue Mary开公司
查看>>
[笔记]STM32使用非8M晶振时如何修改代码
查看>>
个人对vue生命周期的理解
查看>>
cocos2dx 3.x simpleAudioEngine 长音效被众多短音效打断问题
查看>>
Section 1.2 dualpal
查看>>
存储(硬件方面的一些基本术语)
查看>>
Dithering-视觉的奇特现象
查看>>
观察者模式
查看>>
转】MyEclipse使用总结——MyEclipse文件查找技巧
查看>>
Weka中数据挖掘与机器学习系列之基本概念(三)
查看>>
Java-文件上传和下载
查看>>