public HttpResponseMessage PostExam([FromBody] ExamModel model) { var nullData = model == null; if (nullData) { return(Request.CreateResponse(HttpStatusCode.BadRequest, new { Message = "Invalid data" })); } if (_userDal.GetUserById(model.UserId) == null) { return(Request.CreateResponse(HttpStatusCode.BadRequest, new { Message = "User not found" })); } if (_testDal.GetTestById(model.TestId) == null) { return(Request.CreateResponse(HttpStatusCode.BadRequest, new { Message = "Test not found" })); } var userExam = _examDal.GetExamByUserId(model.UserId); if (userExam != null && String.IsNullOrEmpty(userExam.Grade)) { _examDal.UpdateUserTest(model.UserId, model.TestId); return(Request.CreateResponse(HttpStatusCode.Created, new { Message = "User was assigned test" })); } _examDal.AssignTestToUser(model.UserId, model.TestId); return(Request.CreateResponse(HttpStatusCode.Created, new { Message = "User was assigned test" })); }