0

我正在使用 MVVM 和 Prism编写桌面应用程序,但遇到以下问题。除了标签等,还需要以不同的语言存储数据。

例如,在美国,用户可能能够使用英语或西班牙语登录(因为他们是母语人士)。

  • 如果用户在进入产品详细信息表单时使用西班牙语登录,则产品描述将针对西班牙语保存到数据库中。
  • 如果他们使用英语登录,产品描述将保存到数据库并与英语相关。

目前我唯一的想法如下:
- 一个全局可访问的 ApplicationViewModel 包含 CurrentLoggedInUser 属性

我想知道的是如何在使用 MVVM 时保存当前登录的用户选择的语言,尤其是在桌面应用程序中?
注意选择的语言可能与操作系统所在的语言和区域设置

不同 当使用 MVVM 时,其他人如何解决这个问题并在不同的窗口/用户控件之间维护用户的“会话”?

4

1 回答 1

1

您需要做的就是将当前语言存储在某个地方,也许是一个LCID

通常,这用于加载特定于语言的资源文件,该文件负责大多数与语言相关的情况。控件等只是将所有字符串存储在资源中,因此它们不需要直接访问当前语言。

对于您确实需要访问该语言的情况,例如知道将数据库字符串保存在哪里,那么是的,该语言应该作为一些静态/单例公开,或者更理想的是,应该将其注入到任何 ViewModel 中。

于 2012-04-12T10:45:39.610 回答