如何将请求的页面重定向到区域设置文件夹名称下的页面,如en \ default.aspx

时间:2013-12-05 05:25:46

标签: c# asp.net .net localization

我正在构建一个ASP.NET Web应用程序,需求如下

  1. 当用户首次登陆网站 - dafult.aspx页面时,它应该识别文化设置,如果是英文则应该退出en \ default.aspx

  2. 一旦用户登陆en \ dafault.aspx页面,页面就会有下拉列表来选择语言,如果用户选择英国 - 英语,它应该将它们重定向到gb \ default.aspx

    < / LI>

    我的网站文件结构如下

    default.aspx
    en/
      default.aspx
    gb/
      default.aspx
    fr/
      default.aspx
    es/
      default.aspx
    it/
      default.aspx
    nl/
      default.aspx
    

    您能告诉我如何使用代码示例实现此目的吗?

    我基于资源文件构建本地化网站非常成功,但我们有特定要求以上述格式构建网站。

1 个答案:

答案 0 :(得分:0)

您可以使用global.asax挂钩。您还需要一个用户选择的当前语言的标志。这可以是用户选择的current culture's locale或存储在cookie上的标记,或其他内容......

例如,您可以在那里使用钩子函数,例如Application_BeginRequest,您可以在其中决定将当前请求重定向到何处。如果您当前的区域设置为it,那么您可以解析请求的网址并重定向到特定文件夹。

为了清楚起见,我不建议总体上采用这种方法。我强烈建议遵循suggested by microsoft localization process。我上面描述的方法不是很干净,我相信它没有微软提出的嵌入式解决方案那么快。

希望我帮忙!