撤消Checkout时阻止创建暂存任务

时间:2016-08-15 13:26:31

标签: kentico

在Kentico 8.2中,当我“撤消结帐”时,会创建一个暂存任务。因此,我必须记住在撤消结帐后始终删除任务。撤消结账时是否有设置或其他方法来阻止创建新的暂存任务?

2 个答案:

答案 0 :(得分:3)

您确定在撤消签出时是否创建了新的暂存任务?您是否有自定义步骤的自定义或工作流程?你使用什么样的工作流程?

可以访问global events并自定义类似(在Old_App_Code中)的行为:

using CMS.Base;
using CMS.Synchronization;

[CustomVersioningTasksHandler]
public partial class CMSModuleLoader
{
private class CustomVersioningTasksHandler : CMSLoaderAttribute
{
    public override void Init()
    {
        StagingEvents.LogTask.Before += LogTask_Before;
    }
    void LogTask_Before(object sender, StagingLogTaskEventArgs e)
    {
        //if sender or e contains info that origin is undo checkout
        //{
        //    e.Cancel();
        //}
    }
}
}

请仔细检查哪个操作会创建您的暂存任务。如果您不想记录任务,例如。对于每个文档更新,您可以“禁用它”,如:

if (e.Task.TaskType == CMS.DataEngine.TaskTypeEnum.UpdateDocument)
{
    e.Cancel();
}

随意检查所有 TaskTypeEnum 选项,并选择最符合您需求的选项。

答案 1 :(得分:1)

没有设置可以阻止这种情况。也没有理由不让它同步到你的其他环境。