2010-07-28 2 views
1

Я столкнулся с проблемой создания задания таймера по требованию из обработчика события. Он отлично работает на моей машине dev, где пользователь также является администратором фермы. На промежуточном сервере (и в производстве тоже) этот пользователь будет другим. По-видимому, это должен быть администратор фермы, который создает/обновляет задания таймера, поскольку у них есть доступ к конфигурации db.JobDefinitions for Timer Jobs в SharePoint

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

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

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

ответ

0
+0

Не всегда - RunWithElevatedPrivelages работает как учетная запись приложения-приложения для веб-приложений. В «простой» установке одного сервера это будет работать, но при установке на нескольких серверах это, вероятно, не имеет прав администратора. – Ryan

1

Предыдущий ответ неправильный или, по крайней мере, неверный для SharePoint 2010. Вы не можете создавать определения заданий в 2010 году таким образом даже с повышенными привилегиями, поскольку они должны создаваться из централизованного администрирования. У меня была аналогичная проблема, и это было моим делом this is a blog I wrote about that

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

 Смежные вопросы

  • Нет связанных вопросов^_^