我正在使用MVVM Ligth。 ModelView的构造函数调用名为Load()的异步函数。此功能访问数据库和Web服务,需要时间和潜在的例外。 当在Load()线程中引发异常时,它不由主线程管理,因此用户无法在UI线程中显示错误消息。它丢失了。
管理这些方案的策略是什么?
我是否需要使用catch()并将错误消息放在UI中显示的属性中?
答案 0 :(得分:0)
因为它是异步运行的,所以在引发异常的时候,主线程已经通过了那行代码而忽略了它。
您可以在Load()
方法中放置try catch来捕获任何异常,然后使用Dispatch
显示它。