我创建了简单的HttpModule
,所有我需要的只是内部有效Sitecore.Context
,但在处理过程中,我发现我的Sitecore.Context
是某种默认值。
我可以让Sitecore用户登录Sitecore等。 如何解决?
答案 0 :(得分:2)
我假设您有Sitecore上下文,但它为null或设置为错误的站点或语言。 您可以像这样更改上下文:
// switch to the preferred site
Sitecore.Context.SetActiveSite("yourSiteName");
// set the preferred database
Sitecore.Context.Database = Sitecore.Configuration.Factory.GetDatabase("master");
// set the preferred language
Language language = Sitecore.Globalization.Language.Parse("en");
Sitecore.Context.SetLanguage = (language, false);
您可能还希望在处理完成后切换回原始设置。因此,将原始设置“保存”在变量中是明智的,这样您可以在之后更改它们
答案 1 :(得分:1)
查看John West在Sitecore管道上发布的有关如何建立上下文的背景信息。
和
以下关于创建和运行自定义管道的博文应该会让您了解如何实现自己的管道。
http://adeneys.wordpress.com/2008/08/27/creating-and-running-custom-pipelines-in-sitecore/