mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-22 18:52:08 +08:00
- 实现 ILocalizationManager 接口及 LocalizationManager 管理器 - 添加 ILocalizationTable 和 ILocalizationString 接口及其实现 - 创建 LocalizationConfig 配置类用于管理本地化行为 - 实现 ConditionalFormatter 和 PluralFormatter 内置格式化器 - 添加本地化文档包括 API 参考和使用指南 - 集成本地化系统到核心框架架构中
50 lines
1.3 KiB
C#
50 lines
1.3 KiB
C#
namespace GFramework.Core.Abstractions.Localization;
|
|
|
|
/// <summary>
|
|
/// 本地化字符串接口(支持变量和格式化)
|
|
/// </summary>
|
|
public interface ILocalizationString
|
|
{
|
|
/// <summary>
|
|
/// 表名
|
|
/// </summary>
|
|
string Table { get; }
|
|
|
|
/// <summary>
|
|
/// 键名
|
|
/// </summary>
|
|
string Key { get; }
|
|
|
|
/// <summary>
|
|
/// 添加变量
|
|
/// </summary>
|
|
/// <param name="name">变量名</param>
|
|
/// <param name="value">变量值</param>
|
|
/// <returns>当前实例(支持链式调用)</returns>
|
|
ILocalizationString WithVariable(string name, object value);
|
|
|
|
/// <summary>
|
|
/// 批量添加变量
|
|
/// </summary>
|
|
/// <param name="variables">变量数组</param>
|
|
/// <returns>当前实例(支持链式调用)</returns>
|
|
ILocalizationString WithVariables(params (string name, object value)[] variables);
|
|
|
|
/// <summary>
|
|
/// 格式化并返回最终文本
|
|
/// </summary>
|
|
/// <returns>格式化后的文本</returns>
|
|
string Format();
|
|
|
|
/// <summary>
|
|
/// 获取原始文本(不进行格式化)
|
|
/// </summary>
|
|
/// <returns>原始文本</returns>
|
|
string GetRaw();
|
|
|
|
/// <summary>
|
|
/// 检查键是否存在
|
|
/// </summary>
|
|
/// <returns>是否存在</returns>
|
|
bool Exists();
|
|
} |