在我看来,我想从该文件上的特定本地资源访问资源字符串。正如您从网络表单中知道的那样:
(string)GetLocalResource("Title");
无痛且光滑。框架处理从文化信息代码扩展 (.en-EN.resx) 获取的 .resx 文件。
在带有 Razore 视图的 MVC4 中这可能吗?如何?
我注意到我可以将Custom Tool
.resx 文件上的属性设置为PublicResXFileCodeGenerator
. 这样我就可以从视图中访问它。示例:我为 index.cshtml 用丹麦语和英语创建了 2 个资源文件。就像我在网络表单中一样。这是我希望我能写的(Custom Tool Name
属性设置为“ViewResource”):
@ViewResource.Title
巴姆。如果当前文化是丹麦语,标题将是“Forside”,如果是英语,它将是“Home”。但相反,我得到的唯一选择是选择一个特定的文件。并从中选择所需的字符串:
@ViewResource.Index_cshtml_en-EN_resx.Title
那不是动态的。所以我想我可以制作一个扩展类,以某种方式取代 en-EN/da-DK。但是对于如此“简单”并且已经很好且容易集成到网络表单中的东西来说,这似乎确实是相对大量的工作。必须有另一种方式。当然,mvc 团队像其他一切一样为我们提供了一些智能机制 :)