2-10 SharePoint Event Receiver 事件触发器,事件接收器

office/sharepoint——>事件接收器

列表项事件——>自定义列表——>已添加的项

 

elements描述文件,默认会给所有列表使用

 

指定给指定的列表使用

 

using System;
using System.Security.Permissions;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;
using Microsoft.SharePoint.Workflow;

namespace CustomEventRecevierTwo.ERCustomEventReceiver
{
    /// <summary>
    /// 列表项事件
    /// </summary>
    public class ERCustomEventReceiver : SPItemEventReceiver
    {
        ///// <summary>
        ///// 已添加项.
        ///// </summary>
        //public override void ItemAdded(SPItemEventProperties properties)
        //{
        //    SPListItem item = properties.ListItem;
        //    item["总分"] = Convert.ToInt32(item["语文"]) + Convert.ToInt32(item["数学"]) + Convert.ToInt32(item["外语"]);
        //    item.Update();
        //    //base.ItemAdded(properties);
        //}

        /// <summary>
        /// 已添加项.
        /// </summary>
        public override void ItemAdded(SPItemEventProperties properties)
        {
            SPListItem item = properties.ListItem;
            try
            {
                item["总分"] = Convert.ToInt32(item["语文"]) + Convert.ToInt32(item["数学"]) + Convert.ToInt32(item["外语"]);
                item.Update();
            }
            catch (Exception)
            {

                item["标题"] = "字段错误";
            }
            //base.ItemAdded(properties);
        }


    }
}
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Receivers ListUrl="Lists/ListCode">
      <Receiver>
        <Name>ERCustomEventReceiverItemAdded</Name>
        <Type>ItemAdded</Type>
        <Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
        <Class>CustomEventRecevierTwo.ERCustomEventReceiver.ERCustomEventReceiver</Class>
        <SequenceNumber>10000</SequenceNumber>
      </Receiver>
  </Receivers>
</Elements>

运行

绑定已经存在的触发器,控制台

查看assembly地址

 

绑定已有或者删除,事件接收器

 

 

posted @ 2020-05-25 16:02  七秒钟得记忆  阅读(143)  评论(0)    收藏  举报