Приемник событий SharePoint DocumentSet ItemAdded не запускается
Я программно создал ContentType на основе набора документов и хочу присоединить к нему получатель событий. Выглядит примерно так:
SPEventReceiverDefinition eventReceiverDefinition = TestDocumentSet.EventReceivers.Add();
eventReceiverDefinition.Class = "DocSetsTesting.EventReceivers.DocSetReceiver.DocSetReceiver"; // String
eventReceiverDefinition.Assembly = Assembly.GetExecutingAssembly().FullName; // String
eventReceiverDefinition.Type = SPEventReceiverType.ItemAdded; // SPEventReceiverType
eventReceiverDefinition.Data = "XML"; // Arbitrary input data (String)
eventReceiverDefinition.Update();
Когда я делаю это для события ItemAdding, обработчик работает. Но это не будет работать для ItemAdded. Я делаю все это, потому что хочу скрыть файлы с определенными типами контента, чтобы не отображать их в веб-части "Набор документов". Это вообще возможно? А может быть, есть более простой способ сделать это? Большое спасибо.
1 ответ
Мне кажется, что вы забыли добавить ContentType.Update(true). Также помните, что ItemAdded - это асинхронное событие, которое не запускается в w3wp-процессе. Для отладки необходимо подключиться к процессу owstimer.exe.