Esempio n. 1
0
        private static void AllStudentsThatGraduatedOn(DataSet ds, string[] universityNames, int graduationYear)
        {
            if (universityNames == null)
            {
                universityNames = new string[0];
            }

            var universityNamesCsv = string.Join(",", universityNames.Select(u => "'" + u + "'"));

            ConsoleHelper.WriteSectionForCollection(
                $"All students that graduated {universityNamesCsv} in year {graduationYear}",
                ds.AllStudentsThatGraduatedOn(University.MultipleUniversitiesByName(universityNames), graduationYear),
                gradstud =>
            {
                var courseTextBuilder = new StringBuilder();
                courseTextBuilder.AppendLine($"#{gradstud.Student.Id} {gradstud.Student.FirstName} {gradstud.Student.LastName}");

                var graduatedUniversitiesArray = gradstud.GraduatedUniversities?.ToArray();
                if ((graduatedUniversitiesArray != null) && (graduatedUniversitiesArray.Length > 0))
                {
                    courseTextBuilder.AppendLine($"    graduated following universities: ");

                    foreach (var item in gradstud.GraduatedUniversities)
                    {
                        courseTextBuilder.AppendLine($"       - university (#{item.University.Id}){item.University.Name} on {item.GraduationDate:yyyy-MM-dd}");
                    }
                }
                else
                {
                    courseTextBuilder.AppendLine($"    (no universities)");
                }

                Console.WriteLine(courseTextBuilder.ToString());
            },
                () => Console.WriteLine("(no student)"));
        }