我有一个ASP.Net webforms应用程序,它使用.Net全球化功能在不同的语言环境中提供.aspx页面。我已经定义的自定义错误,.net defaultRedirect到特定于语言环境的错误页面
<customErrors mode="RemoteOnly" defaultRedirect="Error.htm">
我更喜欢使用non-.Net页的defaultRedirect中,以防止无限循环的可能性,万一错误页面本身产生一个错误,所以我有针对性的静态。 htm页面。但是,我想在用户最初请求的语言环境中呈现该页面,其中语言环境由查询字符串确定。
完成此操作的最佳方法是什么?
我已经考虑这些选项,但我感兴趣的其他选项:
- 重定向到一些其他应用程序/域,可以运行服务器端逻辑来重定向或渲染区域设置特定的响应(似乎像矫枉过正)
- 使用的客户端代码(JavaScript的)来呈现特定的语言环境的内容(不适用于JavaScript的浏览器禁用工作,不过,我想它为这些用户工作太)
- 充分利用静态错误页面以多种语言显示文本 - 在一个页面上显示所有语言文本(我倾向于只在一个语言环境中显示文本,虽然)