0

以下是我如何使用 String.Format 来显示消息:

String.Format(CultureInfo.CurrentCulture, CommonResource.AlreadyExists, PageResource.UserViewModel_EmailId, viewModel.EmailId)  

AlreadyExists 的瑞典语字符串是 AlreadyExists 的{0} '{1}' Redan Finns
英文字符串是{0} '{1}' already exists

但是消息总是以英文显示。即使我选择瑞典语作为语言。

4

1 回答 1

0

你的假设是错误的。

  1. String.Format使用文化参数来获取正确的文化资源。
  2. CultureInfo.CurrentCulture是正确的文化。

解决这些问题:

  1. String.Format使用文化来格式化DateTime和编号对象。
  2. 'CultureInfo.CurrentCulture' 是 windows 用于格式化DateTime和数字的文化信息。如果您想获得您的 Windows UI 文化,您需要使用CultureInfo.CurrentUICulture.

CommonResource.AlreadyExists如果您的 Windows 文化设置为瑞典语,则应该已经返回瑞典语字符串。如果没有,您可能设置了错误的资源文件。

有关资源和文化的更多信息,请参阅我的答案:

于 2013-10-24T08:13:59.840 回答