• Sharepoint开发EventHandler及部署


    Event Handler 是SharePoint中与网站(web),列表/文档库(list),列表项(list item),邮件(Email)相关联的事件处理程序,当我们对站点内容进行某些操作是,Event Handler就会截获相应的事件,然后对其进行相应的操作。

    所以,SharePoint中的EventHandler有Web Level,List Level,List Item Level和Email这几种。SharePoint在开发EventHandler的时候,需要继承SPWebEventReceiver,SPListEventReceiver,SpListItemEventReceiver或SPEmailEventReceiver类,然后实现里面的方法来完成我们的功能。

    其实,SharePoint开发EventHandler是很简单的,如果说难的话,可能就难在了业务上面。下面,就以一个Demo来实现两个功能,记录一下EventHandler的开发过程,我这里创建的SharePoint2007项目,都是使用的WSPBuilder来完成的,它的确是个不错的工具。

    1.首先,需要到CA中开启站点的EventHandler支持。

      1

      2

    2.打开VS2005,创建WSPBuilder项目。

      3

      4

      5

      6

    3.项目创建完成后,需要注意一下两个xml文件,分别是:feature.xml和elements.xml

    feature.xml

    elements.xml

    4.好了,feature.xml和elements.xml文件该处理的地方以处理好了,这里,我需要添加两个事件,分别是ItemAdded和ItemDeleting,开始编写代码了。

    ItemAdded & ItemDeleting

    5.代码也编写完成了,接下来的工作就是部署咯。

       部署方式很简单的,WSPBuilder就是这么的给力,我们只需要做一下工作就可完成部署。

       image (鼠标右键项目,Build项目)

       image (Build WSP当前的项目,这一步是打包的过程,会将需要发布的文件生成一个WSP文件包)

      image (Deploy,这一步就是将刚才打包成WSP的文件分别部署到指定的发布位置,完成部署工作)

    6.部署完毕后,需要到站点中去激活EventHandler,注意,我在创建EventHandler的时候,Scope指定的是“Web”,所以,我需要到“Site features”中去激活该EventHandler。

      image (从这里进去,找到刚才部署的site features)

      image (激活刚才部署的EventHandler)

    7.OK,一切就绪,测试下吧。

      image

      image

    以上是在SharePoint2007中使用WSPBuilder开发的EventHandler,相比之下,SharePoint2010开发EventHandler就方便多了,下面记录下SharePoint2010开发EventHandler与2007的不同以及注意事项。

    1.SharePoint2010开发EventHandler时,不需要到CA中开启EventHandler支持;

    2.SharePoint2010开发EventHandler时,在创建的项目中添加Event Receiver项,然后一步步选择事件接收器类型、事件源、处理什么样的事件。很方便就完成了项目的创建。

    如下图所示:

     image image

    3.SharePoint2010开发EventHandler时,可以将事件源指定到具体的位置(即具体到那一个Web或List上面去),如下所示:

    Elements.xml

    4.SharePoint2010部署方便,当我们在开发中选择部署类型为“沙盒解决方案”时,也就意味着,我们可以将开发好的WSP文件,经过站点管理员上传到SharePoint站点,并激活就可以让其工作了。

    好了,就记录这么些吧,以后在慢慢补充。

    有关SharePoint2010开发EventHandler(2010中jiaoEvent Receiver)可参考:http://www.cnblogs.com/chenxizhang/archive/2010/04/25/1719841.html

  • 相关阅读:
    leetcode 14. 最长公共前缀
    leetcode13. 罗马数字转整数
    leetcode 21.合并两个有序链表
    leetcode14-最长公共前缀
    leetcode13-罗马数字转整数
    leetcode11- 盛最多水的容器
    leetcode9-回文数
    leetcode7- 整数反转
    leetcode 1-两数之和
    文件的上传
  • 原文地址:https://www.cnblogs.com/qixing_gan/p/2789118.html
Copyright © 2020-2023  润新知