public async Task <IHttpActionResult> CreateAskChoice(int idQuestion, [FromBody] question_choice form)
        {
            try
            {
                //find question null or not null
                var findQuestion = (from a in db.questions from b in db.surveys
                                    where a.surveys_id == b.id && a.id == idQuestion && b.surveys_type_id == 1 select a).FirstOrDefault();
                if (findQuestion != null)
                {
                    //find check answer duplicate
                    var answer_title = db.question_choice
                                       .Where(a => a.description.ToString().ToLower() == form.description.ToString().ToLower()).FirstOrDefault();
                    if (answer_title == null)
                    {
                        form.question_id = findQuestion.id;
                        form._checked    = false;
                        form.create_at   = DateTime.Now;
                        db.question_choice.Add(form);
                        int check = await db.SaveChangesAsync(); //save

                        if (check > 0)
                        {
                            return(Ok(await FetchDetailsSurvey.GetDetailsSurvey(Convert.ToInt32(findQuestion.surveys_id))));
                        }
                        else
                        {
                            return(BadRequest("Create Answer fails"));
                        }
                    }
                    else
                    {
                        return(BadRequest("Answer duplicate."));
                    }
                }
                else
                {
                    return(BadRequest("Question not found."));
                }
            }
            catch
            {
                return(BadRequest("Error"));
            }
        }
        public async Task <IHttpActionResult> UpdateAskChoice(int idQuestion, int idAnswer, [FromBody] question_choice form)
        {
            var findQuestion = (from a in db.questions
                                where a.id == idQuestion
                                select a).FirstOrDefault();

            if (findQuestion != null)
            {
                var answers = db.question_choice.Where(a => a.id == idAnswer && a.question_id == findQuestion.id).FirstOrDefault();
                if (answers != null)
                {
                    var answer_title = db.question_choice
                                       .Where(a => a.description.ToString().ToLower() == form.description.ToString().ToLower() && a.id != idAnswer).FirstOrDefault();
                    if (answer_title == null)
                    {
                        answers.description     = form.description;
                        db.Entry(answers).State = System.Data.Entity.EntityState.Modified;
                        int check = await db.SaveChangesAsync();

                        if (check > 0)
                        {
                            return(Ok(await FetchDetailsSurvey.GetDetailsSurvey(Convert.ToInt32(findQuestion.surveys_id))));
                        }
                        else
                        {
                            return(BadRequest("Update ask error."));
                        }
                    }
                    else
                    {
                        return(BadRequest("Answer duplicate"));
                    }
                }
                else
                {
                    return(BadRequest("Asks for question not found."));
                }
            }
            else
            {
                return(BadRequest("Question not found."));
            }
        }