Set*_*ong 5 .net localization internationalization
在我的.NET Core类库项目中,当资源文件名中包含一个点时,资源文件不会更新.例如,当我在.NET Core项目中添加Resources.en.resx或Resources.es.resx文件时,自定义工具无法生成或更新C#资源文件.这是错误消息:
自定义工具ResXFileCodeGenerator无法为输入文件"Resources.en.resx"生成输出,但未记录特定错误.
如果您知道任何解决方法或任何修复方法,请指出正确的方向
删除当前在您的任何 .resx 文件 Resources目录中的。
现在转到您的Resources目录并右键单击Add > New Item.
选择Resource File并在表格底部输入文件名。重要的是您第一次获得正确的名称并且不要重命名。你可以使用类似的东西Resource.resx。
这个第一个Resource.resx文件应该有自己的设计器类。它还需要为您的项目进行本地化的所有键和值,因此如果您有一个现有的Resource.en.resx您可以将其中的值复制并粘贴到这个中。
如果您需要,IStringLocalizer<Resource>或者换句话说,您需要以Resource某种方式引用该类,那么您将需要转到解决方案资源管理器并左键单击Resource.resx. 在“属性”框中有一个名为“自定义工具”的字段。如果您希望从 resx 生成可公开访问的类,则需要将其从 更改ResXFileCodeGenerator为PublicResXFileCodeGenerator。
现在您可以添加单独的Resource.ja.resx,Resource.es.resx文件。这些并没有需要有一个自定义工具ResXFileCodeGenerator之上运行,所以你可以从属性删除。这将修复您的错误消息。
我正在将 VS2019 与 .Net Standard 2.0 一起使用,但仍然存在此错误。我已经尝试过,...删除文件,清理,重建。但错误仍然存在。
我最终使用 ResXManager 工作得非常好,它可以从 Visual Studio 市场获得。
https://marketplace.visualstudio.com/items?itemName=TomEnglert.ResXManager
为 ResXManager 团队点赞!
| 归档时间: |
|
| 查看次数: |
1624 次 |
| 最近记录: |