コード例 #1
0
        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);
        }
コード例 #2
0
        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));
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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));
        }