/// <summary> /// Related specific course with specific study program, and semester. /// </summary> /// <param name="courseId">Unique identifer for the course</param> /// <param name="studyProgram">Study program that needs to be related with specified course</param> /// <param name="semester">Semester that needs to be related with specified course</param> /// <returns>True if added, false if not</returns> public async Task <ResultMessage <bool> > AddInStudyProgram(int courseId, StudyProgram studyProgram, Semester semester) { try { CourseStudyProgram courseStudyProgram = new CourseStudyProgram() { CourseId = courseId, Semester = semester, StudyProgram = studyProgram, StudyYear = semester.GetStudyYear() }; await _orhedgeContext.AddAsync(courseStudyProgram); await _orhedgeContext.SaveChangesAsync(); return(new ResultMessage <bool>(true, OperationStatus.Success)); } catch (DbUpdateException ex) { return(new ResultMessage <bool>(false, _errorHandler.Handle(ex))); } catch (Exception ex) { return(new ResultMessage <bool>(false, _errorHandler.Handle(ex))); } }