This project has moved. For the latest updates, please go here.

User.Following and User.Requested incorrect after creating or destroying friendship

Dec 1, 2013 at 7:13 AM
Edited Dec 1, 2013 at 7:14 AM
On Windows Phone, when using the TwitterCtx.DestroyFriendship(string, string, Action<TwitterAsyncResponse<User>>) or CreateFriendship(string, string, bool,Action<TwitterAsyncResponse<User>>) methods, the TwitterAsyncResponse.State (of type User) seems to have incorrect Following and FollowRequestSent properties in the callback action provided as a parameter. I implement it as
 Action<TwitterAsyncResponse<User>> completedAction = resp => Dispatcher.BeginInvoke(() =>
                // stuff

            if (e.Relationship == RelationshipType.Following || e.Relationship == RelationshipType.Requested) //then unfollow user
                AppData.CurrentProfile.TwitterCtx.DestroyFriendship(e.ID, null, completedAction);
            else //then follow user
                AppData.CurrentProfile.TwitterCtx.CreateFriendship(e.ID, null, false, completedAction);
where e is a custom EventArgs containing the ID of the user to follow/unfollow and the current relationship before clicking the button to follow or unfollow the user.

In the completedAction, resp.Status does equal TwitterErrorStatus.Success, so I know the response was successful. Also, the other properties of the User, such as the profile picture url, are correctly updated in the callback action. I tested it with fake profile, in which I changed the profile picture and name, then clicked the follow button in my app, and the new User object had the updated name and profile picture Urls.
So, the only place the error is occurring is in the User.Following and User.FollowRequestSent properties.
However, occasionally, the correct properties will display, which is odd.. It's an intermittent issue.
Is this an error on my part or is there a bug in LinqToTwitter?
Dec 1, 2013 at 7:15 AM
P.S. It also doesn't seem like the TwitterContext.DestroyFriendship() method will cancel a following request. Is this not supported?