using Microsoft.Extensions.Localization; using System; using System.Globalization; namespace BetterGenshinImpact.GameTask.Model; /// /// 独立任务参数基类 /// public abstract class BaseTaskParam where T : class { /// /// 游戏语言CultureInfo /// public CultureInfo GameCultureInfo { get; private set; } /// /// 多语言StringLocalizer /// 用于读取与 同名的.resx文件中的多语言信息 /// public IStringLocalizer StringLocalizer { get; private set; } public BaseTaskParam(CultureInfo? gameCultureInfo, IStringLocalizer? stringLocalizer) { GameCultureInfo = gameCultureInfo ?? new CultureInfo(TaskContext.Instance().Config.OtherConfig.GameCultureInfoName); StringLocalizer = stringLocalizer ?? App.GetService>() ?? throw new Exception(); } }