示例#1
0
 public bool IsFollowing(FollowerLinkDTO followData)
 {
     return(db.Users
            .FindById(followData.UserId)
            .FollowingUsers
            .Any(u => u.Id == followData.FollowingUserId));
 }
示例#2
0
        public async Task Unfollow(FollowerLinkDTO followData)
        {
            var follower      = db.Users.FindById(followData.UserId);
            var followingUser = db.Users.FindById(followData.FollowingUserId);

            followingUser.Followers.Remove(follower);
            await db.SaveChangesAsync();
        }
示例#3
0
 public async Task ChangeFollow(FollowerLinkDTO followData)
 {
     if (IsFollowing(followData))
     {
         await Unfollow(followData);
     }
     else
     {
         await Follow(followData);
     }
 }
        public async Task FollowAction([FromBody] FollowingLinkViewModel viewModel)
        {
            var followerId = RequestContext.Principal.Identity.GetUserId();
            var name       = User.Identity.GetUserName();

            var followerData = new FollowerLinkDTO {
                UserId          = viewModel.UserId,
                FollowingUserId = viewModel.FollowingUserId
            };

            await activityService.ChangeFollow(followerData);
        }