JobDefinitions для заданий таймера в SharePoint - PullRequest
1 голос
/ 29 июля 2010

Я столкнулся с проблемой при создании задания таймера по требованию из обработчика событий. Он отлично работает на моем компьютере разработчика, где пользователь также является администратором фермы. На промежуточном сервере (и на производстве тоже) этот пользователь будет другим. Очевидно, это должен быть администратор фермы, который создает / обновляет задания таймера, поскольку у них есть доступ к базе данных конфигурации.

Я использовал задание таймера, чтобы справиться с представлением о том, что многие элементы могут быть обновлены одновременно с использованием таблицы данных, и если это произойдет, я хотел, чтобы накопительный пакет обновления происходил через определенный период после внесения изменений.

Теперь я думаю, что мне, возможно, придется настроить повторяющееся задание таймера вместо «однократного» задания, и в задании таймера проверить выполнение определенных условий перед выполнением любой работы.

Есть ли какие-либо предложения о том, как можно добиться желаемого результата, если бы функция свертывания запускалась после любых обновлений, но не после каждого?

Ответы [ 2 ]

1 голос
/ 29 июля 2010

Предыдущий ответ является неправильным или, по крайней мере, неправильным для SharePoint 2010. Определения заданий в 2010 году нельзя создать таким образом, даже с повышенными привилегиями, так как они должны быть созданы из центра администрирования. У меня была похожая проблема, и это был мой вывод это блог, о котором я писал

Я бы посоветовал вам создать приемник событий с задержкой, скажем, 10 минут (таймер или нить в спящем режиме) и зарегистрировать себя в пакете, скажем, веб-ресурса, чтобы другой экземпляр не работал. Это может решить проблему.

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

См. http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsecurity.runwithelevatedprivileges.aspx, чтобы исправить проблему с разрешениями.

...