Выполнить SPFeaterureceiver только на создании сайта
-
10-12-2019 - |
Вопрос
Мы недавно обновили от SharePoint 2007-2010, и мы еще не готовы обучать пользователей на новом интерфейсе, поэтому я создал SPFEATerureCeiver, который установит шаблон сайта обратно на внешний вид.
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
SPWeb web = (SPWeb)properties.Feature.Parent;
web.UIVersion = 3;
web.UIVersionConfigurationEnabled = true;
web.Update();
}
.
Однако это выполняется, когда функция активирована и устанавливает все сайты к этому, что может быть в порядке, но хотелось бы некоторое руководство.
Есть ли способ выполнить только это или что-то подобное, когда сайт создается, а не только тогда, когда функция активирована, оставляя какие-либо сайты, которые уже созданы? Вместо этого является идея, что функция технически активирована, когда сайт создается и, следовательно, будет выполняться, когда сайт создан и не может ничего сделать об этом для существующих сайтов?
Решение
You should be able to use event recievers to do this, more specifically the SPWebEventReciever.
From Microsoft:
An event receiver is a piece of managed code that responds to SharePoint events when specific triggering actions occur on a SharePoint object. Triggering actions include activities such as adding, updating, deleting, moving, checking in, and checking out.
References:
http://msdn.microsoft.com/en-us/library/gg749858(v=office.14).aspx
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spwebeventreceiver(v=office.14).aspx