我有一个管道处理器,它在网站上按预期工作,但是当你进入CMS时会造成严重破坏。Sitecore管道处理器搞乱了CMS
什么是确定请求是否适合CMS的正确方法? 最好我想要比检查URL是否包含“/ sitecore /”更强大一点。
我有一个管道处理器,它在网站上按预期工作,但是当你进入CMS时会造成严重破坏。Sitecore管道处理器搞乱了CMS
什么是确定请求是否适合CMS的正确方法? 最好我想要比检查URL是否包含“/ sitecore /”更强大一点。
网站上下文是做这件事的好方法。您可以使用标准的Sitecore配置工厂方法来提供应该使用扩展名的站点名称,然后忽略其他站点名称,包括“shell”。
您可以正常退出,如果你在“壳”网站...
if (Sitecore.Context.Site.Name.Equals("shell", StringComparison.InvariantCultureIgnoreCase))
{
// Exit here if we're avoiding the sitecore shell altogether
return;
}
这取决于它是有关引起你的代码炸毁情况是什么。你可以检查页面模式,以避免问题模式...
if (Sitecore.Context.PageMode.IsPageEditorEditing)
{
// Exit here if we're avoiding someone editing the page.
return;
}
谢谢。这是一个很好的答案。显然,确定上下文站点是否是“Shell”的关键在于。说实话,我还没有意识到CMS作为这个网站运行。 – 2013-03-14 18:38:42
我选择以前的答案作为接受的答案,因为它更具可配置性,但都适用于我的目的。 – 2013-03-14 18:40:34