有一个恼人的问题。Sitecore - 在OnSavingItem事件上创建一个新项目将Shell重定向到新创建的项目
当用户编辑项目上的字段时,我们使用OnSavingItem事件处理程序在背景中的其他位置创建一些新项目。
问题是用户编辑字段的项目重定向到我们在后台创建的项目。
我们希望它保持在哪里......任何想法?
感谢
有一个恼人的问题。Sitecore - 在OnSavingItem事件上创建一个新项目将Shell重定向到新创建的项目
当用户编辑项目上的字段时,我们使用OnSavingItem事件处理程序在背景中的其他位置创建一些新项目。
问题是用户编辑字段的项目重定向到我们在后台创建的项目。
我们希望它保持在哪里......任何想法?
感谢
如果要禁用转移到刚刚创建你也可以考虑实施以下代码的项目:
// 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;
您使用的是
<event name="item:saved">
处理程序?如果是这样,不要忘记,此事件也会触发您创建的所有新项目,并可能触发递归事件循环。
是的,我们是,但我们只执行我们的代码,如果该项目是一个特定的模板。 – danswain 2010-10-11 15:17:03
这个答案来自于Sitecore的论坛...归功于约翰·西
我想你可以使用项目:保存事件或saveUI管道。如果需要处理通过API发生的更改,请使用该事件;如果您只需处理通过用户界面发生的更改,则使用管道。
您也可以考虑将逻辑添加到字段本身。
约翰·西Sitecore的博客
项目:保存的是多比saveUI管道中的处理器重。例如,item:saved在发布期间触发,这不是您真正想要的。我始终建议在管道或工作流程操作级别处理这种自定义。
这就是我写的确切代码:) – danswain 2010-10-16 08:12:46