Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have a SPWeb ( http://example.com/site ), created used a custom web template, with several features activated on its scope.

When I delete the SPWeb it would be desirable that all the features activated at http://example.com/site would be deactivated (therefore running the FeatureDeactivating events on all features at that scope).

Some quick testing showed that sharepoint does not deactivate those features automatically.

How can I achieve this behavior programmatically?

share|improve this question

1 Answer 1

up vote 1 down vote accepted

Trap the WebDeleting method using a WebEventReceiver. Iterate over your activated features at that scope, then deactivate them.

Read more in MSDN: http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spwebeventreceiver.webdeleting(v=office.12).aspx (Note there's a version of that page for 2010 too).

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.