MVC3的资源文件命名问题 - 不会自动生成代码

时间:2012-02-01 12:41:15

标签: asp.net-mvc-3 localization embedded-resource

我有一个使用Razor的MVC3应用程序。我想本地化各种语言的应用程序,所以我添加了一个App_LocalResources文件夹并添加了一个资源文件,如下所示:

Index_cshtml.en-US.resx

Index_cshtml.en-GB.resx

但是,当我将资源文件的代码生成设置为public时,代码文件已创建但为空。如果我将文件重命名为Index_cshtml_en-GB.resx,它会自动生成正确的代码,因此看起来好像MVC无法在其命名约定中处理'.en-GB'或'.en-US'。但是,这不是ASP.NET应用程序根据文化集知道要使用哪个资源文件的关键方式。

我确实在ASP.NET webform应用程序中使用了这么多次,对于MVC是不同的?

1 个答案:

答案 0 :(得分:0)

对于像这样的问题,迭代方法可能效果最好。首先你可能想尝试(注意使用。而不是_)

Index.cshtml.resx

一旦有效,请尝试

Index.cshtml.en.resx or Index.cshtml.en-US.resx