编写和布置一个List Event Receivers(上)

1.     什么是List Event Receivers

Event Receivers其实是一个.Net Framework的类,用来实现某些功能.它必须得安装在GAC里面,然后被SharePoint实例化并引用。

2.     创建一个Event Receivers的四个步骤:

a)       创建一个继承自SPListEventReceiverSPItemEventReceiver的类。

b)      给这个类创建一个强名称。

c)       将这个类布置到GAC

d)      通过Feature, content type或者写代码来布置这个类。

3.     以下是逐步创建一个List Event Receivers的具体过程. 这个类要实现的功能是,当更改List里的内容时,往日志中写入一条记录.创建一个类,添加对Microsoft.SharePoint.dll的引用,然后书写代码如下:

using System;

using System.Collections.Generic;

using System.Text;

using System.IO;

using Microsoft.SharePoint;

 

namespace EventLogger

{

    public class ListEventLogger:SPItemEventReceiver

    {

        public override void ItemAdded(SPItemEventProperties properties)

        {

            WriteTextToLog(string.Format("{0} item added:{1}",properties.ListItem.Name.ToString(),DateTime.Now.ToString()));

        }

        public override void ItemDeleted(SPItemEventProperties properties)

        {

            WriteTextToLog(string.Format("{0} item deleted:{1}", properties.ListItem.Name.ToString(), DateTime.Now.ToString()));

        }

        public override void ItemUpdated(SPItemEventProperties properties)

        {

            WriteTextToLog(string.Format("{0} item updated:{1}", properties.ListItem.Name.ToString(), DateTime.Now.ToString()));

 

        }

 

        private void WriteTextToLog(string text)

        {

            StreamWriter logFile = File.AppendText(@"c:\log.txt");

            logFile.Write(text + "\n");

            logFile.Close();

        }

    }

}

4.     给这个类添加强名称,然后将生成的dll文件拖到C:\WINDOWS\assembly文件夹下面.

下面一篇文章将介绍如何将这个类应用到某个List中.

posted on 2008-09-18 21:41  名可真难起  阅读(419)  评论(0编辑  收藏  举报