events - Tridion 2011 工作流程次要版本使用事件处理程序自定义代码进行增量

标签 events workflow version tridion tridion-2011

我们还有 Tridion 2011 和页面处理工作流程。我们在页面预保存上有事件处理程序。当用户保存页面时,将调用事件处理程序来修改页面元数据并启动工作流程。因此,每次编辑器保存单击时,页面的次要版本都会变为 0.3。所以基本上: 0.1 - 保存页面的 Tridion 版本 0.2 - 为保存页面元数据而执行的事件处理程序代码,并且由于 Save() 调用,此代码被再次调用以导致下一个次要版本 0.3 - 执行相同的事件处理程序代码。

我想要实现的目标是在每次用户“保存”点击时将次要版本保持为 0.1。

我尝试过预保存、后保存、预 checkin 和后 checkin ,并更改了执行顺序,即事件系统订阅调用的最后一个参数,但没有任何帮助。所以请。帮助:)

最佳答案

为什么要在事件中调用 Save()?如果您在保存页面之前进行更改,那么它应该一次性存储所有内容,而无需您调用“保存”。

public PageEvent()
{
    EventSystem.Subscribe<Page, SaveEventArgs>(ChangePageTitle, EventPhases.Initiated);
}
private void ChangePageTitle(Page page, SaveEventArgs args, EventPhases phases)
{
    page.Title = "Nuno was here " + page.Title;
}

这将更改页面标题,正如您所见,我不会调用“保存”,因为编辑器已经这样做了。

关于events - Tridion 2011 工作流程次要版本使用事件处理程序自定义代码进行增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13807328/

相关文章:

ruby-on-rails - 如何在 CircleCI 上指定较新版本的 wkhtmltopdf?

javascript - 第二次点击 jQuery

events - 统一/C# : How to execute a function after another function has finished its execution?

python - 在 Python 中处理一个简单的工作流

.net - 我应该如何编写类似流程图的代码?或者我应该使用 Windows Workflow Foundation 之类的东西?

java - Java 扩展是否可以在 Play Framework 上运行?

version - 如何通过查看源代码找出站点使用的 Silverstripe 版本?

jquery - Kendo UI slider : can I generate a SLIDE or CHANGE event without mouse interaction?

c++ - 使用 boost::asio 实现事件计时器

ruby-on-rails - Rails Workflow Gem - 将事件元编程到named_scopes?