在 .NET Core 1.0 中使用 resx 资源
Posted
技术标签:
【中文标题】在 .NET Core 1.0 中使用 resx 资源【英文标题】:Using resx resources in .NET Core 1.0 【发布时间】:2016-07-05 00:32:00 【问题描述】:我正在尝试在 ASP.NET Core 项目中使用资源 (.resx) 文件。我使用 namedResource 让它在 rc1 中工作,但似乎无法让它在 RTM 中工作。这是我的 project.json 的样子:
"buildOptions":
"embed":
"include": [ "Resources/resource.resx" ]
我是这样访问它的:
Resources.ResourceManager.GetString("Field1");
似乎资源没有嵌入,因为我调试时那里什么都没有。
任何帮助将不胜感激。
【问题讨论】:
找到了答案! ***.com/questions/37360068/… Mr.mrfleck 解决了这个问题。因此,如果我将 .resx 文件移动到项目的根目录而不是子文件夹中,它会按预期工作。我已经尝试了从子文件夹嵌入的所有方法,但它不再有效。现在我将使用这个解决方法,但我怀疑这是 RC2 中的一个错误。目前这是一个工具问题。 这能回答你的问题吗? Localization in separate project Asp.net Core MVC 【参考方案1】:对于资源使用中的字符串: 移除嵌入。
var x = ResourceFoo.Field1;
对于资源使用中的文件: 包括嵌入文件(例如:/Folder1/**/*) Assembly.GetExecutingAssembly().GetManifestResourceStream("Folder1.Folder2.file.ext");
【讨论】:
以上是关于在 .NET Core 1.0 中使用 resx 资源的主要内容,如果未能解决你的问题,请参考以下文章
如何在 javascript 文件中使用 resx 文件。 .net 核心 3.1 mvc
ASP.NET Core 1.0 中使用 Swagger 生成文档