示例#1
0
        public void AddQuestion(Question q, List <string> tags)
        {
            using var context = new QADbContext(_connectionString);

            context.Questions.Add(q);
            context.SaveChanges();
            foreach (string name in tags)
            {
                Tag t = GetTag(name);
                int tagId;
                if (t == null)
                {
                    tagId = AddTag(name);
                }
                else
                {
                    tagId = t.Id;
                }
                context.QuestionsTags.Add(new QuestionsTags()
                {
                    QuestionId = q.Id, TagId = tagId
                });
            }
            context.SaveChanges();
        }
示例#2
0
 public void AddUser(User u, string password)
 {
     u.PasswordHash    = BCrypt.Net.BCrypt.HashPassword(password);
     using var context = new QADbContext(_connectionString);
     context.Users.Add(u);
     context.SaveChanges();
 }
示例#3
0
 public void AddLike(int questionId, int userId)
 {
     using var context = new QADbContext(_connectionString);
     context.Likes.Add(new Likes {
         QuestionId = questionId, UserId = userId
     });
     context.SaveChanges();
 }
示例#4
0
        private int AddTag(string name)
        {
            using var context = new QADbContext(_connectionString);
            Tag t = new Tag()
            {
                Name = name
            };

            context.Tags.Add(t);
            context.SaveChanges();
            return(t.Id);
        }
示例#5
0
 public void AddAnswer(Answer a)
 {
     using var context = new QADbContext(_connectionString);
     context.Answers.Add(a);
     context.SaveChanges();
 }