Sharepoint 2013 关于"SPChange"简介
在SharePoint中,我们经常会需要获取那些改变的项目,其实api为我们提供了SPChange对象,下面,我们通过列表简单介绍下这一对象。
1、创建一个测试列表,名字叫做“SPChangeItems”,并插入测试数据,如下图:

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

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

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

5、附源代码
SPList list = web.GetList("Lists/SPChangeItems");
SPChangeQuery query = new SPChangeQuery(true, true);
SPChangeCollection changecoll = list.GetChanges(query);
foreach (SPChange change in changecoll)
{
if (change is SPChangeItem)
{
SPChangeItem changeitem = (SPChangeItem)change;
if (changeitem.ChangeType == SPChangeType.Delete)
{
Console.WriteLine(string.Format("ListName:{0},ItemId:{1}", list.Title, changeitem.Id.ToString()));
Console.WriteLine(string.Format("ChangeType:{0}", changeitem.ChangeType.ToString()));
}
else
{
try
{
SPListItem item = list.GetItemById(changeitem.Id);
Console.WriteLine(string.Format("ListName:{0},ItemId:{1},Title:{2}", list.Title, changeitem.Id, item.Title));
Console.WriteLine(string.Format("ChangeType:{0}", changeitem.ChangeType.ToString()));
Console.WriteLine();
}
catch { }
}
}
}
总 结
通过SPChange我们可以查询站点、视图、用户、列表、文件夹、用户组等等的修改,可以很方便的了解站点的变化。然后封装成WebPart或者Web Application Pages来进行展示,都是很方便的。
参考链接
http://msdn.microsoft.com/zh-cn/library/microsoft.sharepoint.spchange(v=office.15).aspx
Sharepoint 2013 关于"SPChange"简介的更多相关文章
- SharePoint 2013 "通知我"功能简介
功能简介 "通知我"主要是在列表或者文档库里面的项目,有添加/删除/修改等操作,发送邮件通知设置的用户的功能:可以针对列表或者文档库设置通知,也可以针对单一项目设置通知功能,是Sh ...
- SharePoint 2013 日历重叠功能简介
之前做了一个“SharePoint 2013 日历根据Category显示不同颜色”,然后大家留言说为什么不用SharePoint自带的日历重叠功能,所以自己尝试一下这个功能,和之前的博客进行一下对比 ...
- SharePoint 2013 REST 服务使用简介
1.创建测试使用列表”REST Demo”,插入一些测试数据,如下图: 2.添加内容编辑器,并且添加脚本引用以及HTML代码,如下图: Result的Div为显示结果使用,input标签触发REST服 ...
- SharePoint 2013 跨网站集发布功能简介
在SharePoint Server 2013网站实施中,我们经常会遇到跨网站集获取数据,而2013的这一跨网站集发布功能,正好满足我们这样的需求. 使用SharePoint 2013中的跨网站发布, ...
- SharePoint 2013 图文开发系列之WebPart
这是我们介绍SharePoint开发入门的第一篇,在这一篇里,我们会介绍SharePoint开发的几个关键物理路径,一些开发技巧和最基础的WebPart开发. 开发工具 在SharePoint 201 ...
- SharePoint 2013 图文开发系列之定义站点模板
SharePoint站点模板是一个非常好的功能,方便我们开发一类网站,然后在此基础上做二次开发,对于SharePoint的使用,有着举足轻重的作用. 因为篇幅比较长,所以加上目录,方便大家查看: 一. ...
- SharePoint 2013 托管导航及相关配置
设计完善的导航可告诉您网站的用户大量有关网站所提供业务.产品和服务的信息.通过更新导航背后的分类法,可以推动业务并保持更新,而不必在过程中重新创建其网站导航.在 SharePoint 2013 中,可 ...
- SharePoint 2013 Excel Services ECMAScript 示例之明日限行
前言:最近遇到一个“明日限行”的功能,北京的交通啊,这个不在今天讨论范围内,暂不吐槽,想想代码开发,还要写WebPart部署,很麻烦,而且部署服务器,需要领导审批,想绕过这个麻烦事儿,就想到客户端了, ...
- SharePoint 2013 中的 PowerPoint Automation Services
简介 许多大型和小型企业都将其 Microsoft SharePoint Server 库用作 Microsoft PowerPoint 演示文稿的存储库.所有这些企业在 ...
随机推荐
- 2 个UserControl 的传值问题
问题描述:有2个UserControl:UserControl1 里有一个Button,UserControl2 里面有一个TextBox,这2个控件都加载到了主窗体Form1 上.要求的是,点击 U ...
- DevExpress XtraTreeList的复选框 禁用
树的2个事件代码如下,通过节点的tag判断是否禁用节点前的复选框.树的节点加载时设置要禁用的节点tag为-1,不禁用的则设为相关的值 private void treeListPer_CustomDr ...
- 使用nodejs搭建图片服务器(一)
背景 当我们开发一个Web项目的时候,为了将图片管理与web服务分离开,通常都会搭建一个图片服务器. 之所以选择nodejs是因为使用nodejs来搭建web项目相当简单而且快速,虽然这个图片服务器很 ...
- [原]如何用Android NDK编译FFmpeg
我们知道在Ubuntu下直接编译FFmpeg是很简单的,主要是先执行./configure,接着执行make命令来编译,完了紧接着执行make install执行安装.那么如何使用Android的ND ...
- java框架篇---spring aop两种配置方式
第一种:注解配置AOP 注解配置AOP(使用 AspectJ 类库实现的),大致分为三步: 1. 使用注解@Aspect来定义一个切面,在切面中定义切入点(@Pointcut),通知类型(@Befor ...
- 论文第4章:iOS绘图平台的实现
面向移动设备的矢量绘图平台设计与实现 Design and Implementation of Mobile Device-oriented Vector Drawing Platform 引用本论文 ...
- 自己动手搭建 Redis 环境,并建立一个 .NET HelloWorld 程序测试
关于 Redis ,下面来自百度百科: redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set( ...
- java中DatagramSocket连续发送多个数据报包时产生丢包现象解决方案
try { //向指定的ip和端口发送数据~! //先说明一下数据是谁发送过来的! byte[] ip = InetAddress.getLocalHost().getHostAddress().ge ...
- ruby -- 问题解决(四)编码错误导致无法显示(2)
从数据库中取得数据显示时报 incompatible character encodings: GBK and ASCII-8BIT或 incompatible character encodings ...
- R Language
向量定义:x1 = c(1,2,3); x2 = c(1:100) 类型显示:mode(x1) 向量长度:length(x2) 向量元素显示:x1[c(1,2,3)] 多维向量:multi-dimen ...