我正在嘗試爲我創建的列表創建一個名爲Questions的事件接收器。如何爲基於自定義內容類型的單個列表創建事件接收器?
當添加新問題時,我想要引發一個事件。我已經研究過它,所以我知道我需要創建一個事件接收器並使用ItemAdded方法。
如何將此綁定到列表的一個實例,以及在創建接收器時爲源類型選擇了什麼?我沒有在那裏有「自定義列表」選項作爲some blog posts suggest.
希望有人能幫助..
我正在嘗試爲我創建的列表創建一個名爲Questions的事件接收器。如何爲基於自定義內容類型的單個列表創建事件接收器?
當添加新問題時,我想要引發一個事件。我已經研究過它,所以我知道我需要創建一個事件接收器並使用ItemAdded方法。
如何將此綁定到列表的一個實例,以及在創建接收器時爲源類型選擇了什麼?我沒有在那裏有「自定義列表」選項作爲some blog posts suggest.
希望有人能幫助..
我認爲這可能是你以後在做什麼:(http://msdn.microsoft。 COM/EN-US /庫/ ff407249.aspx)
using (SPSite site = new SPSite("http://localhost"))
{
using (SPWeb web = site.OpenWeb())
{
SPList list = web.Lists["Shared Documents"];
SPEventReceiverDefinition def = list.EventReceivers.Add();
def.Assembly = "ERDefinition, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=704f58d28567dc00";
def.Class = "ERDefinition.ItemEvents";
def.Name = "ItemAdded Event";
def.Type = SPEventReceiverType.ItemAdded;
def.SequenceNumber = 1000;
def.Synchronization = SPEventReceiverSynchronization.Synchronous;
def.Update();
}
}
問候,
喬爾
-
個@joelblogs
如果你不想使用它的代碼做,嘗試SP EventHandler Manager
如果事件接收器包含itemadded和更新的項目兩種方法我怎麼告訴它,它的兩種類型(def.Type只接受一個值)是否必須調用EventReceivers.Add代碼兩次?也不知道如何獲得程序集信息? – Andrew
你可以在FeatureActivated事件上使用這段代碼嗎? – Andrew
您需要爲每個事件調用EventReceivers.Add()。在這裏兩次,是的。 –