private async void OnRemoveSpecialty() { var specialityStudents = await _sRepo.GetFilteredStudentsAsync(st => st.SpecialityId == SelectedSpeciality.SpecialtyId); if (specialityStudents.Count > 0) { var result = MessageBox.Show( "Вы точно хотите удалить специальность вместе с прикреплёнными студентами?", "К этой специальности прикреплены студенты.", MessageBoxButton.YesNo); switch (result) { case MessageBoxResult.Yes: break; case MessageBoxResult.No: return; default: return; } } await _repo.DeleteSpecialtyWithStudentsAsync(SelectedSpeciality.SpecialtyId); var specialty = Specialities.FirstOrDefault(s => s.SpecialtyId == SelectedSpeciality.SpecialtyId); if (specialty != null) { Specialities.Remove(specialty); } }