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

版权声明:本文博主原创文章。博客,未经同意不得转载。

posted @ 2015-09-17 12:23  phlsheji  阅读(149)  评论(0编辑  收藏  举报