public DiscussionDTO SelectAnswer([FromBody] SelectedAnswerDTO model) { var option = _context.Options.Include(x => x.Discussion).FirstOrDefault(x => x.ID == model.Id); option.Counter++; _context.SaveChanges(); var d = option.Discussion; var disc = _context.Discussions.Include(x => x.Options).FirstOrDefault(x => x.ID.Equals(d.ID)); var options = disc.Options.Select(x => new OptionsDTO { ID = x.ID, Value = x.Value, Counter = x.Counter }).ToList(); var data = new DiscussionDTO { Options = options, QuestionText = d.QuestionText, ID = d.ID, Counter = disc.Options.Sum(x => x.Counter) }; return(data); }
public DiscussionDTO ShowDiscussion(int id) { var discussion = _context.Discussions.Include(x => x.Options).FirstOrDefault(x => x.ID.Equals(id)); var options = discussion.Options.Select(x => new OptionsDTO { ID = x.ID, Value = x.Value, Counter = x.Counter }).ToList(); DiscussionDTO d = new DiscussionDTO { ID = discussion.ID, Options = options, QuestionText = discussion.QuestionText }; d.Counter = d.Options.Sum(x => x.Counter); return(d); }
public ResultDTO AddDiscussion([FromBody] DiscussionDTO model) { var question = new Discussion { QuestionText = model.QuestionText }; question.Options = model.Options.Select(x => new Options { Discussion = question, Counter = x.Counter, Value = x.Value }).ToList(); _context.Discussions.Add(question); _context.SaveChanges(); return(new ResultDTO { Message = "OK", Status = 200 }); }