Пример #1
0
        public bool saveAnswer(int question, Answer answer)
        {
            var dbAnswer = new DBAnswer
            {
                Answer = answer.Text,
            };

            DBQnA dbQnA = _context.DBQnAs.Find(question);

            if (dbQnA == null)
            {
                return(false);
            }

            try
            {
                _context.Answers.Add(dbAnswer);

                dbAnswer.QnA = dbQnA;

                _context.SaveChanges();

                answer.Id = dbAnswer.Id;
            }
            catch (Exception ex)
            {
                return(false);
            }
            return(true);
        }
Пример #2
0
        public static AbstractAnswer GetAnswer(DBAnswer dbAnswer)
        {
            Answer answer = new Answer();

            answer.AnswerId   = dbAnswer.AnswerID;
            answer.Content    = dbAnswer.Content;
            answer.CreateTime = dbAnswer.Acreatetime.ToString();
            answer.IsAdopted  = dbAnswer.Isadopted;
            answer.UserId     = dbAnswer.UserID;
            answer.QuestionId = dbAnswer.QuestionID;
            answer.Like       = dbAnswer.Likes;
            return(answer);
        }
Пример #3
0
        public bool Answer(string content, int questionid)    //回答
        {
            //传过去生成回答,同时传回answerid,生成answer,返回answer
            HttpClient client = new HttpClient();

            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
            DBAnswer dbAnswer = new DBAnswer()
            {
                UserID = this.UserId, Content = content, QuestionID = questionid
            };
            HttpContent answer  = new StringContent(JsonConvert.SerializeObject(dbAnswer), Encoding.UTF8, "application/json");
            string      url     = BaseUrl + "question/newAnswer";
            var         task    = client.PostAsync(url, answer);
            bool        success = task.Result.IsSuccessStatusCode;

            return(success);
        }
Пример #4
0
        public bool upvoteAnswer(int id)
        {
            DBAnswer dBAnswer = _context.Answers.FirstOrDefault(q => q.Id == id);

            if (dBAnswer == null)
            {
                return(false);
            }

            dBAnswer.Upvotes++;

            try
            {
                _context.SaveChanges();
            }
            catch (Exception feil)
            {
                return(false);
            }
            return(true);
        }
        public List <DBAnswer> getByKeys(List <int> keys)
        {
            List <DBAnswer> result  = new List <DBAnswer>();
            DBManager       manager = new DBManager(true);

            String sqlCommand = "Select * From dbo.Answers answer Where ";

            for (int i = 0; i < keys.Count; i++)
            {
                if (i != keys.Count - 1)
                {
                    sqlCommand += "answer.answer_id = " + keys[i] + " OR ";
                }
                else
                {
                    sqlCommand += "answer.answer_id = " + keys[i] + ";";
                }
            }
            var reader = manager.Read(sqlCommand);

            while (reader.Read())
            {
                DBAnswer answer = new DBAnswer();
                answer.Answer_id        = (int)reader["answer_id"];
                answer.Answer           = (String)reader["answer"];
                answer.Feedback_history = (String)reader["feedback_history"];
                answer.User_id          = (int)reader["user_id"];
                answer.Last_moderated   = ((DateTime)reader["last_moderated"]).ToString(ServerUtilities.DATE_TIME_FORMAT);

                result.Add(answer);
            }



            manager.Close();
            return(result);
        }
        public DBAnswer getByKey(int answer_id)
        {
            String    sqlCommand = "Select * From dbo.Answers answer Where answer.answer_id = " + answer_id + ";";
            DBManager manager    = new DBManager(true);
            var       reader     = manager.Read(sqlCommand);

            if (!reader.Read())
            {
                return(null);
            }

            DBAnswer answer = new DBAnswer();

            answer.Answer_id        = (int)reader["answer_id"];
            answer.Answer           = (String)reader["answer"];
            answer.Feedback_history = (String)reader["feedback_history"];
            answer.User_id          = (int)reader["user_id"];
            answer.Last_moderated   = ((DateTime)reader["last_moderated"]).ToString(ServerUtilities.DATE_TIME_FORMAT);


            manager.Close();

            return(answer);
        }
Пример #7
0
 public AnswerCtrl()
 {
     dbAnswer = new DBAnswer();
 }