asp.net-mvc - 坚持使用资源文件进行本地化

标签 asp.net-mvc localization embedded-resource

我对基于 resx 的本地化有一个非常奇怪的问题。
首先,让我解释一下,现在它是如何为我完成的。
它是 ASP.NET MVC 项目。我有两个程序集:Web 和域。 Web 包含所有与 MVC 相关的东西,以及域,嗯,包含域类。此外,在域组装中,我存储了大量用于本地化的静态资源(我正在构建具有 3 种不同语言的站点)。

所以我在这个域程序集中有本地化文件夹,并且有如下文件:
CheckoutStrings.resx、CheckoutStrings.en-US.resx、CheckoutStrings.et-EE.resx 等。

现在奇怪的是,这一切都在我的本地机器上使用 VS 开发服务器和 IIS 7.5 运行得非常好。但是,当我将解决方案上传到我的 Web 服务器(Windows Server 2008 R2,因此也是 IIS 7.5)时,我的本地化突然停止工作。

我试图输出

Thread.CurrentThread.CurrentUICulture

在我看来,就在输出本地化字符串之前。
它给了我选择的文化,这是正确的,但字符串被呈现为后备值,而不是本地化的值。

我真的被困在这里,希望有人知道发生了什么......

最佳答案

是不是根本找不到本地化文件而您又回到了“默认语言”?您是否可能在服务器上部署到 GAC 中,但从/bin 文件夹和开发机器上的子文件夹运行它?
您是否尝试过使用 fuslogvw.exe 来查看代码的来源?

请注意,要查看附属程序集的负载,您必须执行一些注册表“黑客”- http://msdn.microsoft.com/en-us/library/e74a18c4(VS.71).aspx :

To log bind failures to satellite assemblies Set the HKLM\Software\Microsoft\Fusion\LogResourceBinds registry value to 1 (the value is a DWORD).

关于asp.net-mvc - 坚持使用资源文件进行本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1991289/

相关文章:

c# - 使用 ASP.NET MVC 创建 LINQ to SQL 数据模型的数据上下文

javascript - 解析 JSON 数据 ASP.NET C# 和 Razor

ASP.NET MVC 伪本地化

iphone - 如何加载正确的本地化文件?

c# - 将 'switch' 与资源文件中的字符串一起使用

java - Java 图像即将出现在 NPE 中

jquery - 使用 jQuery 获取单选按钮的当前选定值

javascript - mvc - 输入时提交文本输入字段

ios - 如何在 iOS 中使用本地化语言更改 xib

java - 从jar中读取资源文件