如何阅读“resgen.exe”生成的“.resources”文件?

时间:2015-11-25 10:03:47

标签: asp.net asp.net-mvc resgen

通过使用resgen.exe,我可以从txt文件生成“resources”文件。我可以在WPF中使用“资源”文件,但是我不知道如何填充“cshtml”文件中的值。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

设计时.resx个文件被编译成.NET程序集中的二进制.resources blob,然后使用ResourceManager类读取。这些blob基本上只是键/值字典。

像这样:

ResourceManager res = new ResourceManager("NameOfEmbedded.resources", GetType().GetExecutingAssembly());
String localizedString = res.GetString("resourceKey");

在Visual Studio中,将围绕每个(非本地化的).resx文件创建一个强类型包装器,这样您就不需要记住每个资源的字符串键,也可以从静态上下文,所以你需要做的就是:

String localizedString = Resources.ResourceKey;

(假设Resources是您的.resx - 包装类的名称)

.cshtml文件中,要呈现本地化文本,请使用@语法进行相应的呈现:

<p>Hello this next text is localized: @Resources.ResourceKey</p>

这与WPF不同,你可以这样做:

xmlns:r="MyNamespace.Properties"

<TextBlock Content="{x:Static r:Resources.ResourceKey}" />