【问题标题】:Change language/culture in Ajax enabled ASP.NET web application在启用 Ajax 的 ASP.NET Web 应用程序中更改语言/文化
【发布时间】:2010-02-04 21:08:25
【问题描述】:

我已经实现了一个支持 5 种不同语言的 ASP.NET Web 应用程序。

Web 应用程序有 5 个 .resx 文件,其中包含以支持的语言显示网站所需的资源。为了以用户选择的语言显示网站,我一直在 InitializeCulture 页面事件中设置 Thread.CurrentThread.CurrentUICulture 和 Thread.CurrentThread.CurrentUICulture。

一些页面的内容周围有更新面板。

根据我的记忆(3 年前我研究全球化时),为了改变文化,你必须进行整页更新。

那么问题来了:

用户打开一个选项卡并开始在某个页面上工作,该页面的内容周围有一个 UpdatePanel。

然后用户打开另一个选项卡并选择一种新语言。

用户返回到原始选项卡并导致回发到服务器...此时页面永远不会将控制权返回给用户。

我该如何解决这个问题?

谢谢,

-弗林尼

【问题讨论】:

    标签: asp.net ajax globalization


    【解决方案1】:

    为了解决这个问题,我最终将用户的文化设置存储到每个页面的 HiddenField 中(确实是在 MasterPage 中进行的)。这样我就可以在 Page InitializeCulture 事件中访问用户的原始文化/语言设置。用户必须在 URL 上单击进入或退出页面才能使用在另一个选项卡中选择的“默认”语言/文化。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-09
      相关资源
      最近更新 更多