asp.net - 使用资源文件本地化

标签 asp.net asp.net-mvc asp.net-mvc-3 localization resx

我在基于 resx 的本地化方面遇到问题。

这是一个 ASP.NET MVC3 项目。我有两个程序集:WebResourceWeb 包含所有 MVC 相关内容,Resource 包含用于本地化的 resx 文件(我正在构建具有 3 种不同语言的网站,例如 file.resxfile.en-AU.resxfile.en-US.resx)。

现在奇怪的是,当我将资源项目引用添加为项目时,这一切在我使用 VS2010 和 IIS 的本地计算机上运行得非常好,但是当我在我的 bin 中添加对 Resource.dll 的引用时 - 它不起作用。

我尝试在输出本地化字符串之前在我的 View 中输出Thread.CurrentThread.CurrentUICulture。它为我提供了选定的文化,这是正确的,但是字符串被呈现为后备值,而不是本地化的值。

谁能告诉我,如果我将引用作为 dll 文件添加到我的 bin 中,为什么它不起作用?

最佳答案

如果我没记错的话,您还应该将生成的 bin、en-au 和 en-us 文件夹添加到您的 bin 中,您应该在资源项目的 bin 中找到这些文件夹

另一个选项确保您拥有带有公共(public)访问器的资源文件

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

相关文章:

MySQL错误代码: 3037 Invalid GIS data provided to function mbrcontains

asp.net-mvc - IHubContext SignalR MVC 的 Autofac 注入(inject)

asp.net-mvc - EF 保存更改错误

asp.net-mvc-3 - 使用 AutoMapper 将元数据传输到 View 模型的技术

c# - 在 Asp.Net MVC 3 中,什么构成 AuthorizeAttribute 的经过身份验证的用户?

asp.net 大师不会使用样式表

c# - 放置图像 Gridview 删除按钮

asp.net - asp.net 2.0版本如何实现短网址

asp.net - 如何防止在 AppHarbor 中丢失我的 Cache-Control header 的 Max-Age 部分?

c# - 在 C# 中使用 RSA 公钥和私钥加密数据