Xamarin.android Xamarin WCF呼叫

Xamarin.android Xamarin WCF呼叫,xamarin.android,Xamarin.android,我试图在我的xamarin android应用程序中调用WCF服务,但当它调用该方法时,应用程序突然退出并忽略任何异常。 我用过这个 以下是我的MainAxtivity.cs文件内容: using Android.App; using Android.Widget; using Android.OS; using System.Net; using System.ServiceModel; using System; namespace TaskTracking.Droid { [Ac

我试图在我的xamarin android应用程序中调用WCF服务,但当它调用该方法时,应用程序突然退出并忽略任何异常。 我用过这个

以下是我的MainAxtivity.cs文件内容:

using Android.App;
using Android.Widget;
using Android.OS;
using System.Net;
using System.ServiceModel;
using System;

namespace TaskTracking.Droid
{
    [Activity(Label = "TaskTracking.Droid", MainLauncher = true, Icon = "@drawable/icon")]
    public class MainActivity : Activity
    {
        Button button1 = null;
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Main);
            button1 = FindViewById<ButtonAssuming you already set up your WCF correctly, try to subscribe to the 
client.GetDataCompleted
event before the
client.GetDataAsync(2);
call.

var client = new TaskServiceClient(binding, EndPoint);
client.GetDataCompleted += Client_GetDataCompleted;
client.GetDataAsync(2);
使用Android.App; 使用Android.Widget; 使用Android.OS; Net系统; 使用System.ServiceModel; 使用制度; 命名空间TaskTracking.Droid { [ActivityLabel=TaskTracking.Droid,MainLauncher=true,Icon=@drawable/Icon] 公共课活动:活动 { 按钮1=空; 受保护的重写void OnCreateBundle包 { base.OnCreatebundle; SetContentViewResource.Layout.Main;
button1=FindViewById假设您已经正确设置了WCF,请尝试在调用client.GetDataAsync2;之前订阅client.GetDataCompleted事件

此外,您正在尝试在后台线程而不是UIThread中制作Toast。因此,请按如下所示更改客户端\u GetDataCompleted代码:


有关UIThread的更多信息

在调用之前,您是否尝试订阅client.GetDataCompleted?@geogechond是的,我尝试过,但没有成功。
private void Client_GetDataCompleted(object sender, GetDataCompletedEventArgs e)
{
    var res = e.Result;
    RunOnUiThread(() => Toast.MakeText(Application.Context, res, ToastLength.Long).Show());
}