ArgumentException将win phone 8.1连接到wcf

时间:2014-07-01 14:34:27

标签: wcf windows-phone-8.1 argumentexception

在构建win phone 8.1 Silverlight的同时, 添加了对WCF的服务引用,一些参考方法:

    [OperationContract]
    Task<GetPlayListResponse> GetPlayList(GetPlayListRequest request);

并像这样使用它:

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        var service = new MediaServiceClient();
        service.GetPlayListCompleted += service_GetPlayListCompleted;
        GetPlayListRequest request = new GetPlayListRequest { BusinessId = 41 };
        service.GetPlayListAsync(request);

    }

    void service_GetPlayListCompleted(object sender, MediaService.GetPlayListCompletedEventArgs e)
    {
        var response =  e.Result;
        if (response.Result.ResultCode == eRequestResultCode.Success)
        {
            lb_RequestList.ItemsSource = response.Songs;
        }

    }

获取以下错误消息:

[System.ArgumentException]  {System.ArgumentException: Value does not fall within the expected range.   at System.Net.Browser.ClientHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)   at System.Net.Browser.ClientHttpWebRequest.<>c__DisplayClasse.<EndGetResponse>b__d(Object sendState)   at System.Net.Browser.AsyncHelper.<>c__DisplayClass1.<BeginOnUI>b__0(Object sendState)}    System.ArgumentException   

这里有例外:

        public WinPhone.Silverlight_Client.MediaService.GetPlayListResponse EndGetPlayList(System.IAsyncResult result) {
            object[] _args = new object[0];
            WinPhone.Silverlight_Client.MediaService.GetPlayListResponse _result = ((WinPhone.Silverlight_Client.MediaService.GetPlayListResponse)(base.EndInvoke("GetPlayList", _args, result)));
            return _result;
        }    

0 个答案:

没有答案