public async Task <IResponse> ImportTeachersAsync(short year, short section) { logger.LogDebug("Hole Lehrkräfte aus SchILD..."); var teachers = await schildExporter.GetTeachersAsync(); logger.LogDebug($"{teachers.Count} Lehrkräfte geladen."); if (OnlyVisibleEntities) { logger.LogDebug("Ausgeblendete Lehrkräfte entfernen"); teachers = teachers.WhereIsVisible().ToList(); } var data = teachers .Select(teacher => { var subjects = teacher.Subjects.Select(x => x.Id.ToString()).ToList(); if (subjects == null) { throw new Exception("Fehler: subjects darf nicht null sein."); } return(new TeacherData { Id = teacher.Acronym, Acronym = teacher.Acronym, Firstname = teacher.Firstname, Lastname = teacher.Lastname, Email = teacher.Email, Title = teacher.Title, Gender = GetGender(teacher.Gender), Tags = GetTeacherTags(teacher, year, section), Subjects = subjects }); }) .ToList(); return(await iccImporter.ImportTeachersAsync(data)); }