• Sharepoint 2013 关于"SPChange"简介


      在SharePoint中,我们经常会需要获取那些改变的项目,其实api为我们提供了SPChange对象,下面,我们通过列表简单介绍下这一对象。

      1、创建一个测试列表,名字叫做“SPChangeItems”,并插入测试数据,如下图:

    clip_image002

      2、删除ID为3的数据,并且修改ID为2的数据,为我们的后面测试做准备,如下图:

    clip_image004

      3、编写我们的代码,本例在控制台中,有需要可以封装WebPart或者application page,如下图:

    clip_image006

      4、执行结果,如下图:

      我们可以看到我们,对话框中显示的添加、更新和删除数据的记录,这就是SPChange的应用,当然,这个不仅仅针对列表,还可以操作文档库、页面等其他,具体可以参考文后附的msdn链接;

    clip_image008

      5、附源代码

     1 SPList list = web.GetList("Lists/SPChangeItems");
     2 
     3 SPChangeQuery query = new SPChangeQuery(true, true);
     4 SPChangeCollection changecoll = list.GetChanges(query);
     5 
     6 foreach (SPChange change in changecoll)
     7 {
     8     if (change is SPChangeItem)
     9     {
    10         SPChangeItem changeitem = (SPChangeItem)change;
    11 
    12         if (changeitem.ChangeType == SPChangeType.Delete)
    13         {
    14             Console.WriteLine(string.Format("ListName:{0},ItemId:{1}", list.Title, changeitem.Id.ToString()));
    15             Console.WriteLine(string.Format("ChangeType:{0}", changeitem.ChangeType.ToString()));
    16         }
    17         else
    18         {
    19             try
    20             {
    21                 SPListItem item = list.GetItemById(changeitem.Id);
    22                 Console.WriteLine(string.Format("ListName:{0},ItemId:{1},Title:{2}", list.Title, changeitem.Id, item.Title));
    23                 Console.WriteLine(string.Format("ChangeType:{0}", changeitem.ChangeType.ToString()));
    24                 Console.WriteLine();
    25             }
    26             catch { }
    27         }
    28     }
    29 }

    总  结

      通过SPChange我们可以查询站点、视图、用户、列表、文件夹、用户组等等的修改,可以很方便的了解站点的变化。然后封装成WebPart或者Web Application Pages来进行展示,都是很方便的。

    参考链接

      http://msdn.microsoft.com/zh-cn/library/microsoft.sharepoint.spchange(v=office.15).aspx

  • 相关阅读:
    解决windows 下Java编译和运行版本不一致的错误has been compiled by a more recent version
    解决两个OpenCV 报错 (raise.c and GTK) ,重新安装和编译
    Java|如何使用“Java”爬取电话号码(转载)
    Java手机号码工具类(判断运营商、获取归属地)以及简要的原理跟踪(转载)
    Caused by: org.hibernate.exception.SQLGrammarException: could not extract ResultSet
    mysql分库分表
    python将html文件转换为pdf
    mysql获取字段名和对应的注释
    mysql大表查询慢对应方案
    harbor安装
  • 原文地址:https://www.cnblogs.com/jianyus/p/3799421.html
Copyright © 2020-2023  润新知