public ActionResult <IEnumerable <FaqGroupVM> > GetAllGroupsWithRelatedQuestions() { var result = new List <FaqGroupVM>(); var groups = db.FaqGroups.Include(fg => fg.Questions).ToList(); foreach (FaqGroup fg in groups) { var questionList = new List <FaqQuestionVMWithoutNavigationProperty>(); foreach (FaqQuestion fq in fg.Questions) { var question = new FaqQuestionVMWithoutNavigationProperty { Id = fq.Id, Question = fq.Question, Answer = fq.Answer }; questionList.Add(question); } var group = new FaqGroupVM { FaqGroupId = fg.FaqGroupId, Title = fg.Title, Questions = questionList }; result.Add(group); } return(result); }
public ActionResult UpdateQuestion(int id, [FromBody] FaqQuestionCreateUpdateVM question) { if (question == null || db.FaqGroups.FirstOrDefault(g => g.FaqGroupId == question.FaqGroupId) == null) { return(BadRequest()); } var questionEntity = db.FaqQuestions.FirstOrDefault(q => q.Id == id); if (questionEntity == null) { return(NotFound()); } questionEntity.Question = question.Question; questionEntity.Answer = question.Answer; questionEntity.FaqGroupId = question.FaqGroupId; db.SaveChanges(); var questionVM = new FaqQuestionVMWithoutNavigationProperty { Id = questionEntity.Id, Question = questionEntity.Question, Answer = questionEntity.Answer }; return(Ok(questionVM)); }
public ActionResult <IEnumerable <FaqQuestionVMWithoutNavigationProperty> > GetAllQuestions() { var result = new List <FaqQuestionVMWithoutNavigationProperty>(); var questions = db.FaqQuestions.ToList(); foreach (FaqQuestion fq in questions) { var question = new FaqQuestionVMWithoutNavigationProperty { Id = fq.Id, Question = fq.Question, Answer = fq.Answer }; result.Add(question); } return(result); }
public ActionResult DeleteQuestion(int id) { var questionEntity = db.FaqQuestions.FirstOrDefault(q => q.Id == id); if (questionEntity == null) { return(NotFound()); } db.FaqQuestions.Remove(questionEntity); db.SaveChanges(); var questionVM = new FaqQuestionVMWithoutNavigationProperty { Id = questionEntity.Id, Question = questionEntity.Question, Answer = questionEntity.Answer }; return(Ok(questionVM)); }