首页 > 代码库 > SharePoint事件接收器

SharePoint事件接收器

本篇是对SharePint事件接收器做一个简单介绍,对此有编程需要的工程师可以查看此篇。

  1. 概念

    事件接收器编程,是SharePoint工程师必学的一项技术,因为他功能强大而且常用。虽然编写过程并不复杂,但还是困扰了一些人的编程思路。在此讲述这方面的知识,帮助大家解决这方面的编程基础。

    说明:以下过程以SharePoint2013开发环境VS2013为IDE编程工具进行讲解。历史版本编程方式与此版本有所不同,但概念和编程思想一致。

    有五种类型的事件接收器:

    1. 列表事件,SPListEventReceiver
    2. 列表项事件,SPItemEventReceiver
    3. 列表电子邮件事件,SPEmailEventReceiver
    4. Web事件,SPWebEventReceiver
    5. 列表工作流事件,SPWorkflowEventReceiver

    每种类型的事件接收器,都有自己的事件处理方法,这些方法用于捕获SharePoint的一些Event,例如在列表库上插入或删除列表项时,增加一些逻辑处理能力。

    我在这里放出MSDN的官方对以上五个类的方法说明,大家可以直接点击以上的类名去查看,不在此描述。

  2. 解决方案结构

    VS2013中的SharePoint解决方案中去创建一个"SharePoint2013空项目",在这个项目上新建"事件接收器"项。

    向导会让你选择事件类型和事件源,并选择要处理的相应事件。

    一个处理类和一个Elements.xml描述文件被自动创建好。你需要做的就是编写这个类和修改这个xml文件。

    当然还有一个Feature1节点会在解决方案创建的同时自动创建出来。点击右键,在上下文菜单中选择"添加事件接收器"。这时会创建一个Feature1.EventReceiver.cs文件,我们还可以在这个类上定义一些代码,使得事件绑定更加的灵活。

    事件接收器类的编程是一个服务器OM API的开发,你的处理逻辑因你的需要而编写。

    Elements.xml是对接收器类的绑定位置的描述

    示例代码如下:

<?xml version="1.0" encoding="utf-8"?>

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">

<Receivers ListTemplateId="101">

<Receiver>

<Name>MailLibEventReceiverEmailReceived</Name>

<Type>EmailReceived</Type>

<Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>

<Class>MailLibEventHandler.MailLibEventReceiver.MailLibEventReceiver</Class>

<SequenceNumber>10000</SequenceNumber>

</Receiver>

</Receivers>

</Elements>

  1. 事件的绑定
  2. 事件的同步/异步执行
  3. 事件编程的注意事项

本文出自 “NET人生” 博客,请务必保留此出处http://642197992.blog.51cto.com/319331/1582165

SharePoint事件接收器