Showing posts with label Event Receiver. Show all posts
Showing posts with label Event Receiver. Show all posts

Monday, June 18, 2012

How to delete the deployed Event Receiver in Sharepoint server 2010 By C#

I took it from this article




private void DeleteEventReceiverFromAList(string siteUrl)
{
using (SPSite site = new SPSite(siteUrl))
{
using(SPWeb web = site.OpenWeb())
{
try
{
SPList list = web.Lists["myList"];
if (list != null)
{
string className = "EventReceiverClass";
string asmName = "EventReceiverAssemblyName, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1111111111111111";
web.AllowUnsafeUpdates = true;
int receivers = list.EventReceivers.Count;
bool isAddedReceiverExist = false;
bool isUpdatedReceiverExist = false;
for (int i = 0; i < receivers; i++)
{
SPEventReceiverDefinition eventReceiver = list.EventReceivers[i];
if (eventReceiver.Class == className && eventReceiver.Type == SPEventReceiverType.ItemAdded)
{
eventReceiver.Delete();
break;
}
}
}
}
catch { }
finally
{
web.AllowUnsafeUpdates = false;
}
}
}
}

How to delete the deployed Event Receiver in Sharepoint server 2010 - PowerShell

I took it from this article

$spWeb = Get-SPWeb -Identity http://contoso.com

$spList = $spWeb.Lists["My List Name"]
$eventsCount = $spList.EventReceivers.Count
$assembly = "Project.Name.Class, Version=1.0.0.0, Culture=neutral, PublicKeyToken=11111111111"
$class = "Namespace.MyClass.ClassName"
$type = 10002
$name = "My Event Name"
for ($i = 0; $i -lt $eventsCount; $i+=1)
{
if ($spList.EventReceivers[$i].Assembly -eq
$assembly
-and
$spList.EventReceivers[$i].Class -eq $class
-and
$spList.EventReceivers[$i].Type -eq $type
-and $spList.EventReceivers[$i].Name -eq
$Name)
{
$spList.EventReceivers[$i].Delete()
}
}
$spList.Update()