Sitecore - 在OnSavingItem上创建新项目事件将Shell重定向到新创建的项目

时间:2010-10-11 14:28:41

标签: sitecore sitecore6

有一个恼人的问题。

当用户在项目上编辑字段时,我们使用OnSavingItem事件处理程序在后台的其他位置创建一些新项目。

问题是用户编辑的项目被重定向到我们在后台创建的隐藏项目。

我们希望它能留在原地...任何想法?

感谢

4 个答案:

答案 0 :(得分: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;

答案 1 :(得分:0)

您使用的是

吗?
<event name="item:saved">

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

答案 2 :(得分:0)

这个答案来自SiteCore论坛......信誉归John West

我认为你可以使用item:save event或saveUI管道。如果您需要处理通过API发生的更改,请使用该事件;如果您只需要处理通过用户界面发生的更改,请使用管道。

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

John West Sitecore博客

答案 3 :(得分:0)

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