示例#1
0
        public IActionResult Put(int id, [FromBody] StateAnswersDto state)
        {
            if (ModelState.IsValid)
            {
                _stateRepository.UpdateStateRecord(state);
                var old = _answerRepository.GetAnswerFrom(state.Id);

                foreach (AnswerDto answer in state.answers)
                {
                    var res = _answerRepository.GetAnswerFromTo(answer.IdFrom, answer.IdTo);
                    if (res != null)
                    {
                        _answerRepository.UpdateAnswerRecord(res);
                    }
                    else
                    {
                        _answerRepository.AddAnswerRecord(answer);
                    }
                }
                foreach (AnswerDto answer in old)
                {
                    if (!state.answers.Contains(answer))
                    {
                        _answerRepository.DeleteAnswerRecord(answer.Id);
                    }
                }
                return(Ok(state));
            }
            return(BadRequest());
        }
示例#2
0
 public IActionResult Post([FromBody] StateAnswersDto state)
 {
     if (ModelState.IsValid)
     {
         var id = _stateRepository.AddStateRecord(state);
         foreach (AnswerDto answer in state.answers)
         {
             answer.IdFrom = id;
             _answerRepository.AddAnswerRecord(answer);
         }
         return(Ok(state));
     }
     return(BadRequest());
 }