Пример #1
0
        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);
            }
        }