Sitecore如何知道工作流程是否已完成(已批准状态并已发布)

时间:2016-04-27 19:37:43

标签: sitecore workflow

我想知道工作流程是否完成。

我想做的是: 我创建了一个程序集,一旦Workflow流程处于最终状态或自动发布工作完成,就在程序集中执行该方法。

<?xml version="1.0" encoding="UTF-8"?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
    <sitecore>
        <events>
            <!-- Once Workflow autoPublish is done, do this for CDN -->
            <event name="publish:complete:remote">
                <handler type="My.Class.Name, Assembly.Name" method="MethodName">
                </handler>
            </event>
        </events>
    </sitecore>
</configuration>

我该怎么做?

2 个答案:

答案 0 :(得分:3)

您在工作流命令下执行的所有操作的工作方式与配置文件中的常规管道和处理器的工作方式类似。但在这种情况下,命令是管道,动作是处理器。

因此,要在Auto-Publish命令之后执行某些操作,您应该在Auto-Publish命令之后添加另一个命令。此新命令应包含指向要执行的方法的链接。

答案 1 :(得分:0)

这取决于你真正想要的东西。您是否想知道特定项目已通过工作流程,或者您是否也想知道异步发布操作已完成?在自动发布后定义一个额外的操作绝对是最简单的方法。添加事件处理程序也是可能的,但更复杂,因为将为每个项目/站点发布触发事件处理程序。你将如何区分?

我看到您正在使用发布:完成:远程事件,但我想知道Sitecore是否使用它。例如,HtmlCacheClearing正在发布:结束:远程事件中运行。