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?


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).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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