public string ReplaceSettingValue(string template, string value) { if (value == null) { return(""); } var result = value; while (Regex.IsMatch(result, template, RegexOptions.Singleline)) { var match = Regex.Match(result, template); var tagName = match.Groups[0].Value; var settingName = match.Groups[1].Value; if (!_replaceCache.ContainsKey(settingName)) { _replaceCache.Add(settingName, _settings.ReadSetting(settingName).StringValue); } var settingValue = _replaceCache[settingName]; result = result.Replace(tagName, settingValue); } return(result); }
public IProgramSetting ReadSetting(string settingName) { return(_globalSettings.ReadSetting(settingName)); }