HttpModule中的Sitecore上下文

时间:2013-01-13 21:29:40

标签: asp.net sitecore sitecore6 ihttpmodule

我创建了简单的HttpModule,所有我需要的只是内部有效Sitecore.Context,但在处理过程中,我发现我的Sitecore.Context是某种默认值。

我可以让Sitecore用户登录Sitecore等。 如何解决?

2 个答案:

答案 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)