sharepoint - 来自 SPWeb 的计时器作业

标签 sharepoint timer task

我想从代码中启动计时器作业需要农场管理员凭据。但是,我需要从将在任何站点中使用的 Web 部件启动计时器作业。现在,当我尝试开始工作时,它显然给了我一个拒绝访问错误,因为应用程序池标识不是场管理员。有关如何解决此问题的任何想法?

谢谢,

最佳答案

计时器作业以场管理员身份运行,不应由最终用户直接触发。由于某些作业可能是资源密集型的,因此只有场管理员才能创建新作业或修改现有作业的计划。

一种解决方案是使用 SPWorkItem 用于对用户任务进行排队的基础结构,然后由源自 SPWorkItemJobDefinition 的自定义计时器作业处理这些任务。 .您的 webpart 会调用 SPSite.AddWorkItem 添加工作项。当您的计时器作业运行时,它将查找具有匹配 WorkItemType GUID 的任何工作项并调用 ProcessWorkItem 重载。

关于sharepoint - 来自 SPWeb 的计时器作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2772508/

相关文章:

javascript - 为什么我只能运行 1 个 JavaScript 内部函数

python - 检查 SharePoint 中的文件是否已完成上传

java - android中20秒后终止无限循环

powershell - 如何删除 SharePoint Online 中的版本历史记录文件?

javascript - 需要来自 TFS/Sharepoint 的 Ping 请求

c - 为什么我的 timefd 上的 epoll 没有按预期工作?

c# - 这是使用 System.Threading.Timer 运行计划的异步/等待方法的正确方法吗?

task - 具有和不具有并行性的 OpenMP 任务

c# - For 循环导致 Task.Run 或 Task.Start 溢出

c# - 线程比任务运行得更快吗?