private List <DicParam> FlatDics(List <DicParam> dics) { var ds = new List <DicParam>(); // foreach (var d in dics) { if (DC.IsParameter(d.Action)) { if (d.Group != null) { ds.AddRange(FlatDics(d.Group)); } else if (d.InItems != null) { ds.AddRange(FlatDics(d.InItems)); } else if (d.Inserts != null) { ds.AddRange(FlatDics(d.Inserts)); } else { ds.Add(d); } } } // return(ds); }