public async Task <Comment> UpdateCommentAsync(string id, UpdateCommentRequest updateCommentIn)
        {
            var filter = Builders <DataAccessComment> .Filter.Eq(s => s.Id, id);

            var update = Builders <DataAccessComment> .Update.Set(s => s.Content, updateCommentIn.Content);

            DataAccessComment dbArticle = await _dbContext.Comments.FindOneAndUpdateAsync(filter, update);

            return(_mapper.Map <Comment>(dbArticle));
        }
        public async Task <Comment> AddCommentAsync(UpdateCommentRequest updateCommentIn)
        {
            ApplicationUser dbUser = await _dbContext.Users.Find(x => x.Id == updateCommentIn.UserId).FirstOrDefaultAsync();

            Article dbArticle = await _dbContext.Articles.Find(x => x.Id == updateCommentIn.ArticleId).FirstOrDefaultAsync();

            if (dbUser == null || dbArticle == null)
            {
                string message = dbUser == null ? "user" : "article";
                throw new RequestedResourceNotFoundException($"{message} with this id wasn't found.");
            }

            DataAccessComment dbComment = _mapper.Map <UpdateCommentRequest, DataAccessComment>(updateCommentIn);

            await _dbContext.Comments.InsertOneAsync(dbComment);

            return(_mapper.Map <Comment>(dbComment));
        }
        public async Task <Comment> GetCommentAsync(string commentId)
        {
            DataAccessComment dbComment = await _dbContext.Comments.Find(x => x.Id == commentId).FirstOrDefaultAsync();

            return(_mapper.Map <Comment>(dbComment));
        }