public static ProblemsModelDetails GetProblem(int problemID) { if (Users == null) { Initialize(); } ProblemsModelDetails problem = new ProblemsModelDetails(); ProblemsModelBase baseProblem = Problems.FirstOrDefault(x => x.ProblemID == problemID); problem.ProblemID = baseProblem.ProblemID; problem.ProblemName = baseProblem.ProblemName; problem.ProblemDescription = baseProblem.ProblemDescription; problem.ProblemChildren = GetChildProblems(problem.ProblemID); return(problem); }
public static List <ProblemsModelDetails> GetChildProblems(int problemID) { if (Users == null) { Initialize(); } List <ProblemsModelDetails> children = new List <ProblemsModelDetails>(); ProblemsModelList parentBase = Problems.FirstOrDefault(x => x.ProblemID == problemID); if (parentBase.ProblemChildren != null) { foreach (ProblemChild child in parentBase.ProblemChildren) { ProblemsModelDetails childDetails = new ProblemsModelDetails(); ProblemsModelBase childBase = Problems.FirstOrDefault(x => x.ProblemID == child.ProblemID); childDetails.ProblemID = child.ProblemID; childDetails.ProblemName = childBase.ProblemName; childDetails.ProblemDescription = childBase.ProblemDescription; childDetails.ProblemChildren = GetChildProblems(child.ProblemID); children.Add(childDetails); } } return(children); }