public ParameterDict CollectParams(string select = null) { var ret = new ParameterDict(Params.Prefix); if (string.IsNullOrWhiteSpace(select)) { ret.Update(Params); } else { var pattern = new Regex(select); var matchedParams = new ParameterDict(); foreach (var item in Params.Items()) { if (pattern.IsMatch(item.Key)) { matchedParams[item.Key] = item.Value; } } ret.Update(matchedParams); } foreach (var item in _childrens.Values) { ret.Update(item.CollectParams(select)); } return(ret); }
public virtual ParameterDict CollectParamsWithPrefix(string prefix = "") { var ret = new ParameterDict(); if (!string.IsNullOrWhiteSpace(prefix)) { prefix += "."; } foreach (var item in _reg_params) { ret[prefix + item.Key] = item.Value; } foreach (var item in _childrens) { ret.Update(item.Value.CollectParamsWithPrefix(prefix + item.Key)); } return(ret); }
private ParameterDict CollectParamsWithPrefix(string prefix = "") { if (!string.IsNullOrWhiteSpace(prefix)) { prefix += "."; } var ret = new ParameterDict(); foreach (var item in Params.Items()) { ret[prefix + item.Key] = item.Value; } foreach (var item in _childrens.Values) { ret.Update(item.CollectParamsWithPrefix(prefix + item.Name)); } return(ret); }