Активация функции SharePoint для новых сайтов (Сшивание ???) - PullRequest
0 голосов
/ 15 июля 2010

Я разрабатываю функцию 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, но ничего не получилось ...

Может помочь какая-то однамне исправить эту проблему ... Заранее спасибо!

С уважением, Бала

1 Ответ

0 голосов
/ 16 июля 2010

FeatureStapling.xml должен иметь область видимости = "Ферма"

SiteDeletFeature должен иметь область видимости = "Веб"

...