示例#1
0
        public async Task <ActionResult <StudSubjectsModel> > Post(string studno, StudSubjectsModel model)
        {
            //try
            //{
            var student = await _repo.GetStudentsRec(studno);

            if (student == null)
            {
                return(BadRequest("Student does not exist"));
            }

            var StudentSubs = _mapper.Map <StudentSubjectsTbl>(model);

            StudentSubs.StudentNo = student;

            //if (model.StudId == 0) return BadRequest("Student ID is required");
            if (model.SubId == 0)
            {
                return(BadRequest("Subject ID is required"));
            }

            var subjects = await _repo.GetSubject(model.SubId);

            if (subjects == null)
            {
                return(BadRequest("Subject could not be found"));
            }
            StudentSubs.SubjectInfo = subjects;

            _repo.Add(StudentSubs);

            if (await _repo.SaveChangesAsync())
            {
                var url = _linkGenerator.GetPathByAction(HttpContext,
                                                         "Get",
                                                         values: new { studno, id = StudentSubs.StudentNo });

                return(Created(url, _mapper.Map <StudSubjectsModel>(StudentSubs)));
            }
            else
            {
                return(BadRequest("Failed to save new Subject"));
            }
            //}
            //catch (Exception)
            //{
            //    return StatusCode(StatusCodes.Status500InternalServerError, "Failed to get Talks");
            //}
        }