ASP.NET应该在pre_init或page_load中使用“checkUser”函​​数

时间:2012-04-05 17:27:26

标签: asp.net

只是想知道我有一个检查页面语言(多语言网站)的功能,如果不是默认语言,我们需要重定向到一个部分的默认语言,即

if (Sitecore.Context.Language.Name != LanguageManager.DefaultLanguage.ToString())
{
     Sitecore.Context.SetLanguage(LanguageManager.DefaultLanguage, true);
     Response.Redirect(SourceHomeUrl(), true);
}

我只是想知道最好将它放在pre_init中,即在任何加载之前进行此检查,然后重定向呢?

2 个答案:

答案 0 :(得分:1)

如果您可以在pre init事件中执行此操作,那么最好在那里执行此操作,以便您可以在执行任何额外/不必要的加载和处理之前重定向用户,而不是在page_load中执行此操作。

答案 1 :(得分:0)

这似乎是合理的,但我也会考虑处理多语言应用程序的其他替代方法,例如将语言特定文本存储在数据库或资源文件中

http://msdn.microsoft.com/en-us/goglobal/bb688115