视觉工作室 2008
我想对我的 ASP.NET MVC 站点进行一些本地化。
有人建议创建一个资源文件“Strings.resx”作为公开的强类型资源,它运行良好并允许我编写
<title><%= Strings.MyView_Title %></title>
然后我继续添加一个文件“Strings.da.resx”。这个文件是在第一个文件旁边创建的,默认为“访问修饰符:无编译”,而第一个(没有语言修饰符的)默认为“内部”。
我可以在 bin 目录中看到已经使用 resource.dll 创建了一个目录(“da”),但是,我在我的站点上看不到任何翻译文本。
我已经用浏览器检查过,唯一的首选语言是丹麦语 (da-DK),但我只看到英文文本。
问题:
1) 我需要在 web.config 中启用一些东西吗?
2)我是否使用正确的类型创建了正确的文件(即 #2 应该是“无编译”)吗?
最佳答案
在您看来,您有页面指令吗?
如果是这样,你有 UICulture="Auto"和 Culture="Auto"吗?
例如...
<%@ Page Language="C#" Inherits="..."
culture="auto" uiculture="auto" %>
这将确保浏览器在请求中传递的 Accept-Language header 用于设置 Thread 区域性。 UICulture 会影响选择哪个资源文件。
有关 ASP.NET i18n 的更多信息,这本书非常好...
http://www.amazon.co.uk/NET-Internationalization-Developers-Guide-Building/dp/0321341384/ref=sr_1_1?ie=UTF8&s=books&qid=1241010151&sr=8-1
它不涵盖 MVC,但涵盖 ASP.NET,因此,许多内容仍然相关。
关于asp.net-mvc - ASP.NET MVC 中的本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/802250/