Xamarin表单错误处理-未从模型显示消息中心警报

Xamarin表单错误处理-未从模型显示消息中心警报,xamarin,xamarin.ios,xamarin.forms,Xamarin,Xamarin.ios,Xamarin.forms,我试图实现从视图模型到视图控制器的错误捕获功能,因此如果出现错误,将显示一条消息 以下是我正在使用的代码: 项目页面视图模型 async Task ExecuteCommand() { ... try { } catch (Exception ex) { Debug.WriteLine(ex); MessagingCenter.Send(new MessagingCenter

我试图实现从视图模型到视图控制器的错误捕获功能,因此如果出现错误,将显示一条消息

以下是我正在使用的代码:

项目页面视图模型

async Task ExecuteCommand()
  {
   ...
    try
        {
        }
    catch (Exception ex)
        {
            Debug.WriteLine(ex);
            MessagingCenter.Send(new MessagingCenterAlert
            {
                Title = "Error",
                Message = "Unable to load services.",
                Cancel = "OK"
            }, "message");
        }
     finally
        {
            IsBusy = false;
        }
ItemsPage.XAML.cs文件 在页面的构造函数中。。

public ItemsPage()
{
初始化组件();
MessagingCenter。订阅
(此“消息”,(发送方,arg)=>{
var argu=arg;
显示警报(“问题”,“消息正文”+参数消息,“正常”);
});

不确定这是否是正确的方法,但如果出现错误,它不会显示警报。

尝试将其包装在对
设备的调用中。BeginInvokeMainThread
类似:

MessagingCenter.Subscribe<ItemsViewModel, MessagingCenterAlert>
    (this, "message", (sender, arg) => {
        var argu = arg;

        Device.BeginInvokeOnMainThread (() => {
            DisplayAlert("Problem","message body" + argu.Message, "OK");
        });
    });
MessagingCenter.Subscribe
(此“消息”,(发送方,arg)=>{
var argu=arg;
Device.beginInvokeMainThread(()=>{
显示警报(“问题”,“消息正文”+参数消息,“正常”);
});
});

尝试将其包装在对
设备的调用中。BeginInvokeMainThread
类似:

MessagingCenter.Subscribe<ItemsViewModel, MessagingCenterAlert>
    (this, "message", (sender, arg) => {
        var argu = arg;

        Device.BeginInvokeOnMainThread (() => {
            DisplayAlert("Problem","message body" + argu.Message, "OK");
        });
    });
MessagingCenter.Subscribe
(此“消息”,(发送方,arg)=>{
var argu=arg;
Device.beginInvokeMainThread(()=>{
显示警报(“问题”,“消息正文”+参数消息,“正常”);
});
});