方法始终在Windows Phone应用程序中返回void

时间:2014-12-13 18:01:27

标签: c# .net web-services wcf windows-phone-8.1

我使用WCF创建服务。该服务实现了一个返回bool类型的方法:

    public interface IUserService 
    {
        [OperationContract(Name="LogIn")]
        bool LogIn(string login, string password);
    }

在我的Windows Phone 8.1 SL应用程序中,我想调用此方法,所以我这样做:

userService.UserServiceClient userService;
userService = new UserService.UserServiceClient();
userService.LogInCompleted += UserService_LogInCompleted;

userService.LogInAsync(login, password);

LogInComplited事件我想获得此方法应返回的bool值,但没有e.Result属性可用

private void UserService_LogInCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
{
     bool exists = e.Result;  // Result doesn't exists, dunno why
}

请有人解释一下为什么在这次活动中e.Result不可用?以及如何获得LogIn方法返回的bool值?

1 个答案:

答案 0 :(得分:2)

试试这个,

userService.UserServiceClient userService = new UserService.UserService Client();
userService.LogInCompleted += (a, ae) =>
 {
    if (ae.Result != null)
    {
       bool exists = ae.Result;
    }
  };
userService.LogInAsync(login, password);