Ejemplo n.º 1
0
 public IActionResult AddFollower([FromBody] AddUserFollowersCommand follow)
 {
     try
     {
         return(Ok(_followersService.AddFollower(follow)));
     }
     catch (NegotiatedContentResultException)
     {
         _logger.LogError($"Cannot Add Follower by {follow.FollowingUserId} to {follow.FollowedUserId}");
         return(StatusCode(409));
     }
 }
Ejemplo n.º 2
0
 public UserFollowers AddFollower(AddUserFollowersCommand follow)
 {
     using (var db = _paintStoreContext)
     {
         if ((db.UserFollowers.Any(x =>
                                   x.FollowedUserId == follow.FollowedUserId && x.FollowingUserId == follow.FollowingUserId)) ||
             follow.FollowedUserId == follow.FollowingUserId)
         {
             throw new NegotiatedContentResultException();
         }
         FollowersManager.UserFollowedCountPlus(db, follow.FollowedUserId);
         FollowersManager.UserFollowingCountPlus(db, follow.FollowingUserId);
         var followToAdd = _mapper.Map <UserFollowers>(follow);
         db.UserFollowers.Add(followToAdd);
         db.SaveChanges();
         return(followToAdd);
     }
 }