Workflow SharePoint计时器作业添加列表项,但不会触发关联的工作流
我有一个名为“会话”的列表,该列表有一个用于创建、修改项目的工作流。当我使用web部件以及手动添加项目时,会触发工作流。我开发了一个每天运行的计时器作业,它将项目添加到“会话”列表中计时器作业向列表中添加项目时,不会触发工作流。使用API创建或编辑列表项目不会触发工作流。您必须使用该类自己触发它。Workflow SharePoint计时器作业添加列表项,但不会触发关联的工作流,workflow,sharepoint-timer-job,Workflow,Sharepoint Timer Job,我有一个名为“会话”的列表,该列表有一个用于创建、修改项目的工作流。当我使用web部件以及手动添加项目时,会触发工作流。我开发了一个每天运行的计时器作业,它将项目添加到“会话”列表中计时器作业向列表中添加项目时,不会触发工作流。使用API创建或编辑列表项目不会触发工作流。您必须使用该类自己触发它。SPSite的每个实例都具有该类型的属性,这是您应该使用的属性 您可以这样编码: SPSite site = foo; // Actually get your instance of SPSite b
SPSite
的每个实例都具有该类型的属性,这是您应该使用的属性
您可以这样编码:
SPSite site = foo; // Actually get your instance of SPSite by whatever is
// your favorite way to do so.
site.WorkflowManager.StartWorkflow(
item,
association,
association.AssociationData,
isAutoStart);
其中,
item
是您创建/编辑的SPListItem,association
是将列表与实际工作流关联的实例,而isAutoStart
是一个boolean
变量,告诉工作流管理器工作流触发器的行为是否应该像自动启动的一样(在您的例子中,true
)。您是否有该语句的源代码,使用API创建或编辑列表项不会触发工作流?我见过其他帖子说他们需要,但需要,site.WorkflowManager.Dispose()。经验证据。你自己试试,谢谢你。我想你想说的是你是对的,其他人大错特错了我主要使用SharePoint Online,在那里您无法访问这些设置。我主要是根据经验讲的,但很高兴知道,使用内部安装,可以正常触发工作流,而无需额外编码。谢谢你:)