4
我正在使用MVVM Light在两个ViewModel之间发送消息。在接收VM中,我正在尝试以下操作:MVVM Light Messenger接收方法
Messenger.Default.Register<NotificationMessage>(this, async (msg) => {
await HandleMessage(msg);
});
private async Task HandleMessage(NoficationMessage message)
{
... code using await
}
第一次发送消息(通过按钮单击),异步方法运行。下次消息发送时什么也没有发生 - 方法不会被调用(通过断点检查)。
以这种方式在Register方法上允许异步吗?
什么是解决方法?
请记住,你必须避免异步void的方法内部例外,因为它们不能被捕获 – Tseng