c# - 能够使用多个 po 文件进行本地化 asp.net core 2.2
问题描述
我正在使用OrchardCore.Localization.Core
NuGet 包并按照本教程将 asp.net 核心项目本地化。一切都很好,我有文件,比如en.po
和fr.po
用于英语和法语的本地化。但我想将一些单词分成单独的文件,例如将 po 文件分成en.po
,和. 我不是在寻找一种仅针对特殊文件等分隔某些单词的智能方法。我只想在单独的文件中包含一些单词以避免每种语言都有一个大的 po 文件。我不太确定我找不到任何关于这件事的文档。NuGet是否已经具有此功能?或者我可以实现一些可以实现这一目标的东西吗?fr.po
errorlist.en.po
errorlist.fr.po
OrchardCore.Localization.Core
解决方案
注意
我在这里在产品自己的 github 问题列表上提出了这个问题,我想在此处添加所有者的答案以供将来参考,所有学分都归功于Sébastien Ros:
在同一文档页面上,它提到您可以提供自己的逻辑来归档文件: https ://docs.microsoft.com/en-us/aspnet/core/fundamentals/portable-object-localization?view=aspnetcore-2.2 #implementing-a-custom-logic-for-finding-localization-files
并根据您的需要调整该GetLocations()
方法,例如列出所有以特定文化结尾的文件,而不是返回单个IFileInfo
.
这是在 OC 框架中使用在多个模块文件夹中查找文件的另一个示例: https ://github.com/OrchardCMS/OrchardCore/blob/dev/src/OrchardCore.Modules/OrchardCore.Localization/ModularPoFileLocationProvider.cs
然后你可以像这样注册你的提供者:
services.AddSingleton<ILocalizationFileLocationProvider, MyPoFileLocationProvider>();
推荐阅读
- javascript - 无法使用 Angular Material 分页进行分页
- python - Autokeras 多输入预测失败
- html - 如何使用硒从下拉列表中选择选项?
- c# - 我可以防止删除特定的 RSA 密钥吗?
- angular - 如何从primeng multiSelect中删除复选框?
- python - Python Django 项目 - 在代码存储库中包含什么?
- javascript - 如何将幻灯片中的图像设为全宽?
- python - 使用 Python 从oddsportal.com 抓取数据
- python - Python Flask 应用程序发布图像并使用 cv2.imread 函数
- android - 如何更新事务中的多个节点(Firebase 实时数据库)