2010-10-11 60 views

回答

3

如果要禁用转移到刚刚创建你也可以考虑实施以下代码的项目:

// Before we copy the item we put notifications on to make sure we won't be transfered to the newly created item       
Sitecore.Client.Site.Notifications.Disabled = true; 

// Your action comes here 

Sitecore.Client.Site.Notifications.Disabled = false; 
+0

这就是我写的确切代码:) – danswain 2010-10-16 08:12:46

0

您使用的是

<event name="item:saved"> 

处理程序?如果是这样,不要忘记,此事件也会触发您创建的所有新项目,并可能触发递归事件循环。

+0

是的,我们是,但我们只执行我们的代码,如果该项目是一个特定的模板。 – danswain 2010-10-11 15:17:03

0

这个答案来自于Sitecore的论坛...归功于约翰·西

我想你可以使用项目:保存事件或saveUI管道。如果需要处理通过API发生的更改,请使用该事件;如果您只需处理通过用户界面发生的更改,则使用管道。

您也可以考虑将逻辑添加到字段本身。

约翰·西Sitecore的博客

0

项目:保存的是多比saveUI管道中的处理器重。例如,item:saved在发布期间触发,这不是您真正想要的。我始终建议在管道或工作流程操作级别处理这种自定义。