0
  public User Login(User user)
    {
        User responseUser = null; ;
        parse.Users.Login<User>("hello", "99999", r =>
            {
                if (r.Success) { responseUser = r.Data; }
            });
        return responseUser;
    }

为什么返回 responseUser 为 null 但 r.Data 不为 null?谢谢!!!

4

1 回答 1

1

您还没有告诉我们该parse.Users.Login<User>函数是如何工作的,但它似乎是异步的。这意味着它将立即返回,并且稍后调用回调。因此,您将从主函数返回 null。

您需要修改 Login 函数,以便它也可以与回调一起使用:

public void Login(User user, Action<User> action)
{
    User responseUser = null;
    parse.Users.Login<User>("hello", "99999", r =>
    {
        if (r.Success) 
        { 
            action(r.Data);
        }
        else
        {
            action(null);
        }
    });
}
于 2012-09-11T05:01:26.597 回答