Я разрабатываю функцию sharepoint, которая создает резервную копию сайта на уровне коллекции сайта и на уровне сайта, когда пользователь пытается удалить сайт.Функция работает нормально, без проблем для существующей коллекции сайтов и сайтов, когда функция активирована.Чтобы дать больше картины, я делаю резервное копирование через код в событиях SiteDeleting и WebDeleting.Эти события подключаются с использованием события FeatureActivation.Я понимаю, что это гарантирует, что событие подключается только для существующих сайтов из-за моего кода (я перехватываю события SiteDeleting и WebDeleting в событии FeatureActivation).После активации функции, если я создаю новое семейство сайтов / сайты, функция не работает (т. Е. Резервное копирование не выполняется при удалении сайта).
Я пытался активировать событие для новых сайтов и, следовательно, яПосмотрел, будут ли подобные события, как создание сайта, где я снова смогу подключить события SiteDeleting и WebDeleting для новых сайтов.Но я узнал после некоторого исследования, что нет события создания сайта, которое можно было бы использовать.После небольшого поиска я обнаружил, что это можно сделать с помощью функции сшивания, где нам нужно создать другую функцию, которая присоединяет эту функцию к новым сайтам через имя шаблона.Я попытался установить обе функции (мою оригинальную и сшиваемую функцию), но она, кажется, никогда не работает ...
Я очень новичок в разработке sharepoint, и для ее исправления требуется время.Было бы здорово, если бы кто-то мог помочь мне заставить эту функцию работать и на новых сайтах ... Я считаю, что я что-то не так делаю в параметре области видимости файла feature.xml ... в списке ниже содержимого feature.xml.
**** SiteDeletFeature (Моя оригинальная функция) ** Feature.xml
<?xml version="1.0" encoding="utf-8" ?>
<Feature Title="My SharePoint Delete Feature"
Scope ="WebApplication"
ActivateOnDefault="True"
Hidden="false"
Id="DA910034-F270-4932-90D0-05AE2EE13192"
xmlns="http://schemas.microsoft.com/sharepoint/"
ReceiverAssembly="My.Sharepoint.SiteDeleteFeature, Version=1.0.0.0, Culture=neutral, PublicKeyToken=762e98b8afce5f9b"
ReceiverClass="My.Sharepoint.SiteDeleteFeature.DeleteFeatureCallOut">
<ElementManifests>
<ElementManifest Location="Elements.xml"/>
</ElementManifests>
</Feature>
SiteDeleteFeatureStapling Feature.xml
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright (c) Microsoft Corporation. All rights reserved. -->
<Feature xmlns="http://schemas.microsoft.com/sharepoint/"
Id="D0495B32-9F78-4142-A456-48B3ECBFFD6C"
ActivateOnDefault="True"
Title="My SharePoint Delete Feature"
Description="My SharePoint Delete Feature"
Version="0.0.0.0"
Scope="Farm">
<ElementManifests>
<ElementManifest Location="FeatureStapling\FeatureStapling.xml" />
</ElementManifests>
</Feature>
FeatureStapling.xml
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright (c) Microsoft Corporation. All rights reserved. -->
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<FeatureSiteTemplateAssociation Id="DA910034-F270-4932-90D0-05AE2EE13192" TemplateName="STS#0" />
.
.
.//goes on, i have included all template names
<FeatureSiteTemplateAssociation Id="DA910034-F270-4932-90D0-05AE2EE13192" TemplateName="MyCOMMUNITY" />
</Elements>
Я пробовал различные параметры в параметре Scope для SiteDeleteFeatureStapling, такие как Web, Site, но ничего не получилось ...
Может помочь какая-то однамне исправить эту проблему ... Заранее спасибо!
С уважением, Бала