Beispiel #1
0
        public ActionResult Favourite(int id)
        {
            var tweet         = this.TwitterData.Tweets.Find(id);
            var currentUserId = this.User.Identity.GetUserId();
            var tweetLike     = new TweetLike {
                TweetId = tweet.Id, UserId = currentUserId
            };

            this.TwitterData.TweetLikes.Add(tweetLike);
            this.TwitterData.SaveChanges();
            return(this.RedirectToAction("Index", "Home"));
        }
        private TweetLike MapTweetLikeToTweetLikeData(TweetLikeData tweetLikeData)
        {
            var tweetLike = new TweetLike
            {
                TweetId    = tweetLikeData.TweetId,
                PublicKey  = tweetLikeData.PublicKey,
                Signature  = tweetLikeData.Signature,
                PostedDate = tweetLikeData.PostedDate
            };

            return(tweetLike);
        }
        public async Task SaveTweetLike(Guid tweetId, Guid userId)
        {
            var tweetLike = new TweetLike(tweetId, userId);

            if (!await _twitterLikeDbContext.Tweets.AnyAsync(t => t.Id == tweetLike.TweetId))
            {
                throw new NotFoundException(nameof(Tweet));
            }

            if (!await _twitterLikeDbContext.Users.AnyAsync(u => u.Id == tweetLike.UserId))
            {
                throw new NotFoundException(nameof(User));
            }

            _twitterLikeDbContext.Entry(tweetLike).State = EntityState.Added;
            await _twitterLikeDbContext.SaveChangesAsync();
        }
        private bool UpdateTweetLikeIfExists(TweetLike tweetLike)
        {
            var savedTweetLike =
                _tweetLikeRepository.Find(x => x.PublicKey == tweetLike.PublicKey && x.TweetId == tweetLike.TweetId);

            if (savedTweetLike != null)
            {
                if (tweetLike.PostedDate.ToUniversalTime() > savedTweetLike.PostedDate.ToUniversalTime())
                {
                    savedTweetLike.Value      = tweetLike.Value;
                    savedTweetLike.PostedDate = tweetLike.PostedDate;
                    savedTweetLike.Signature  = tweetLike.Signature;
                    _tweetLikeRepository.Update(savedTweetLike);
                    return(true);
                }
            }

            return(false);
        }
Beispiel #5
0
 public Task UpdateTweetLike(TweetLike tweetLike)
 {
     TweetLikes[TweetLikes.FindIndex(t => t.Id.Equals(tweetLike.Id))] = tweetLike;
     return(Task.CompletedTask);
 }
Beispiel #6
0
 public Task SaveTweetLike(TweetLike tweetLike)
 {
     TweetLikes.Add(tweetLike);
     return(Task.CompletedTask);
 }
Beispiel #7
0
 public async Task UpdateTweetLike(TweetLike tweetLike)
 {
     await _context.TweetLikes.ReplaceOneAsync(t => t.Id == tweetLike.Id, tweetLike);
 }
Beispiel #8
0
 public async Task SaveTweetLike(TweetLike tweetLike)
 {
     await _context.TweetLikes.InsertOneAsync(tweetLike);
 }