webserviceを使用するには、Webサービス参照を追加し、次のコードをMainPage.xaml.csファイルに追加しました。Webサービス未処理例外
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
namespace WebServiceTest
{
public partial class MainPage : PhoneApplicationPage
{
// Constructor
public MainPage()
{
InitializeComponent();
}
private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
try
{
ServiceReference.PDAServiceSoapClient ws =
new ServiceReference.PDAServiceSoapClient();
ws.GetResoureAroudCompleted +=
new EventHandler<ServiceReference.GetResoureAroudCompletedEventArgs>(ws_GetResoureAroudCompleted);
ws.GetResoureAroudAsync("基站,机楼", 113, 23, 10000);
}
catch
{
System.Windows.MessageBox.Show("error!");
}
}
void ws_GetResoureAroudCompleted(object sender, ServiceReference.GetResoureAroudCompletedEventArgs e)
{
if (e.Error != null)
{
var result = e.Result;
}
}
}
}
は、その後、私はPhoneApplicationを走り、この例外が発生しました:
のSystem.InvalidOperationExceptionは=タイプ 'WebServiceTest.ServiceReference.GetResoureAroudResponseGetResoureAroudResult' を反映したエラーは、未処理の メッセージがありましたました。 InnerException:System.InvalidOperationException メッセージ=プロパティ 'Any1'を反映しているエラーがありました。 Reference.cs コードで
:それはのtry-catchで捕捉いない
public WebServiceTest.ServiceReference.GetResoureAroudResponseGetResoureAroudResult EndGetResoureAroud(System.IAsyncResult result) {
object[] _args = new object[0];
**WebServiceTest.ServiceReference.GetResoureAroudResponseGetResoureAroudResult _result = ((WebServiceTest.ServiceReference.GetResoureAroudResponseGetResoureAroudResult)(base.EndInvoke("GetResoureAroud", _args, result)));**
return _result;
}
、誰もがなぜ知っていますか?
結果としてあなたのWebサービスが返すタイプは何ですか? – sternr
web-phone-7はADO.NETをサポートしていないため、ご利用いただきありがとうございます。ウェブサービスからDataTableが返されます。 – kylin