Create a custom feature
for a custom list, that feature will be added to all the custom lists.
Then if you want to create list dynamically and don’t want to add those
features you can use this code to remove unwanted events.
Before delete the Event Receiver, if you want you can check the type and delete. In the above code I have commented that part. So if you use the above code as it is, it will remove all the Event Receivers.
public
void
removeEvents()
{
// choose your site
using
(SPSite site =
new
SPSite(strUrl))
{
using
(SPWeb web = site.OpenWeb())
{
SPListCollection lists = web.Lists;
SPList list = web.Lists[
"My List"
];
SPEventReceiverDefinitionCollection erdc = list.EventReceivers;
List <SPEventReceiverDefinition> eventsToDelete =
new
List <SPEventReceiverDefinition>();
foreach
(SPEventReceiverDefinition erd
in
erdc)
{
if
(erd !=
null
)
{
try
{
eventsToDelete.Add(erd);
}
catch
(Exception e)
{
Console.Write(e.ToString());
}
}
}
foreach
(SPEventReceiverDefinition er
in
eventsToDelete)
{
//if(er.Type == SPEventReceiverType.ItemAdded)
er.Delete();
}
}
}
}
Before delete the Event Receiver, if you want you can check the type and delete. In the above code I have commented that part. So if you use the above code as it is, it will remove all the Event Receivers.
No comments:
Post a Comment