public RemoveFromFriendsResponse RemoveFromFriends(ISession session, RemoveFromFriendsRequest request) { var response = request.CreateResponse<RemoveFromFriendsResponse>(); response.Success = true; if (session.User.Friends.All(i => i.Id != request.TargetUserId)) { response.Success = false; return response; } using (var uow = UnitOfWorkFactory.Create()) { uow.Attach(session.User); var friend = uow.UsersRepository.FirstMatching(UserSpecification.Id(request.TargetUserId)); if (friend == null) { response.Success = false; } else { session.User.Friends.Remove(friend); uow.Commit(); } } return response; }
public Task<RemoveFromFriendsResponse> RemoveFromFriends(RemoveFromFriendsRequest request) { return ConnectionManager.SendRequestAndWaitResponse<RemoveFromFriendsResponse>(request); }