首页 > 其他专区 > SharePoint >

SharePoint 2013 App Remote Event Receivers

SharePoint 2023-01-12

当我们在使用App的时候,就会发现一些问题,比如那些网站部署、更新或者卸载了,我们很关心我们的App是否有人用,这就需要远程事件接收器了。

  1、在我们的测试App的解决方案上选中鼠标,按F4弹出属性,选中我们需要的处理应用程序,选中True;同时,VS会自动创建一个解决方案,让我们在里面写远程事件接收器的相关代码。

clip_image001

  2、在创建的远程事件接收器的解决方案中,打开svc的代码,然后添加我们的代码(附后),判断如果触发的是安装App的事件,在一个AppInstallLog的列表中插入一条安装记录。

clip_image002

  3、附后的代码,代码很简单,提升权限写列表库,就不多说了;写完代码以后,将这个web站点发布到服务器的IIS目录下;

if (properties.EventType == SPRemoteEventType.AppInstalled)
{
    SPSecurity.RunWithElevatedPrivileges(delegate()
    {
        using (SPSite site = new SPSite("http://url:2014"))
        {
            using (SPWeb web = site.OpenWeb())
            {
                SPList list = web.Lists["AppInstallLogs"];
                SPListItem item = list.Items.Add();
                item["标题"] = "SP2013PictureWallApp";
                item["日志"] = "SP2013PictureWallApp于 " + DateTime.Now.ToString() + " 已经被安装!";
                item.Update();
            }
        }
    });
}

  4、在App的解决方案中,找到AppManifest.xml文件,右键查看代码,修改InstalledEventEndpoint为我们之前发布的站点中svc文件目录;

clip_image003

  5、我们在一个站点中添加我们的App,而后查看AppInstallLogs列表库,发现已经写入一条安装日志了,说明远程事件接收器开发部署成功!

clip_image004

结束语

  以上介绍的是App安装过程中,触发事件写入安装日志的过程,其实,远程事件接收器还可以完成更加丰富的工作,比如像SharePoint解决方案中的事件触发器,为App中的列表或者文档库添加事件,这就需要我们创建Remote Event Receiver解决方案了。


Copyright © 2016-2023 office学习教程网 office.tqzw.net.cn. All Rights Reserved.