zoukankan      html  css  js  c++  java
  • SharePoint 2013 通过审计获取文档下载次数

      1、创建一个文档库,进入库设置,找到”Information management policy settings”,点进去,如下图:

    clip_image002

      2、分别设置”Document”、”Folder”两个,如下图:

    clip_image004

      3、勾选Enable Auditing,如下图:

    clip_image006

      4、勾选所有的Event,如下图:

    clip_image008

      5、代码,如下:

    public static void GetDownLoadNum(string url, string siteurl)
    {
        SPSecurity.RunWithElevatedPrivileges(delegate()
        {
            using (SPSite site = new SPSite(siteurl))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    web.AllowUnsafeUpdates = true;
                    SPAuditQuery auditQuery = new SPAuditQuery(site);
                    auditQuery.AddEventRestriction(SPAuditEventType.View);
                    auditQuery.RestrictToListItem(web.GetFile(url).Item);
                    SPAuditEntryCollection auditEntryCollection = web.Audit.GetEntries(auditQuery);
                    Console.WriteLine(url);
                    Console.WriteLine("count:" + auditEntryCollection.Count.ToString());
                }
            }
        });
    }

      6、下载一次测试文档,运行代码,如下图:

    clip_image010

    总 结

      之前一直听说通过审计获取文档的下载次数,尝试一下用起来感觉还行,也看到有封装自定义字段的解决方案,或者timerjob的解决方案,感觉算是一种方式吧,简单写写开启和调用的方式给大家参考一下。

      特别想说的是,除了下载次数,还有一些其他event可以查看,除了列表项的审计信息,还有列表的相关信息,大家有兴趣的可以自己尝试一下。

      好了,就到这里,休息。。。休息一下。。。

    参考文档

      http://msdn.microsoft.com/en-us/library/bb466223.aspx

  • 相关阅读:
    C#如何调用非托管的C++Dll
    CList 点击表头排序 (3)两种排序的第二种
    CList 点击表头排序 (2)两种排序方法中其中一种
    CList 点击表头排序 (1)SortItems函数
    CListCtrl 隔行变色
    C++去掉字符串中首尾空格和所有空格
    Dialog和FormView如何派生通用类
    STL中erase()的陷阱
    socket 笔记(一)
    prettyJson V7.1 使用
  • 原文地址:https://www.cnblogs.com/jianyus/p/4060596.html
Copyright © 2011-2022 走看看