【发布时间】:2018-05-14 12:37:57
【问题描述】:
我有一个使用资源文件进行翻译的 asp net MVC 应用程序。其中一些资源文件在多个应用程序之间共享。通常这会按预期工作:
ProjectX
- ClientStrings.resx <--- this one is picked for swedish
- ClientStrings.en.resx <--- this one is picked for english
Shared
- Shared.resx <--- this one is picked for swedish
- Shared.en.resx <--- this one is picked for english
我的问题是一个应用程序不应该被翻译成任何其他语言 - 它应该只使用瑞典语。
ProjectY
- ClientStrings.resx <--- this one is picked (only one choice)
Shared
- Shared.resx
- Shared.en.resx <--- ISSUE: this one is always picked (even for swedish)
更改语言的方法是更改浏览器语言。请帮助我理解为什么这对 ProjectY 不起作用!
【问题讨论】:
-
调试时
Thread.CurrentThread.CurrentCulture和Thread.CurrentThread.CurrentUICulture的值是多少? -
可能你应该把
ClientStrings.resx改成ClientStrings.<culture>.resx -
@CodeNotFound 调试时不会出现问题,文化是瑞典语。
-
@Rahul 试试这个,谢谢!
-
@CodeNotFound 我无法直接访问运行出现问题的代码的环境(很遗憾)。我能说的是,当我在本地运行它时(没有出现问题),我分别得到了 sv-se 和 sv 的值。如果如您所说,这些值决定了选择的文件,那么真正的问题是为什么这不适用于 ProjectY,而它却完美地适用于 ProjectX。如果有关项目的更多信息可以提供帮助,请告诉我!
标签: c# asp.net-mvc resources cultureinfo