private List <PcsParameterTotals> CombineMatchingParameters() { List <PcsParameterTotals> output = new List <PcsParameterTotals>(); foreach (var parameter in GetTodaysParameters()) { List <PcsParameterTotals> SeperateParameters = MaterialsChecked.Where(x => x.Name == parameter).ToList(); List <IPcsIndividualParameters> newList = new List <IPcsIndividualParameters>(); foreach (var param in SeperateParameters) { foreach (var weight in param.Weights) { newList.Add(weight); } } output.Add(new PcsParameterTotals(parameter, newList, _pcsScoringRepository)); } foreach (var param in output) { param.ProcessScores(); } return(output); }