我应该问一个建议。我正在为我的公司创建一个内部应用程序,并且我已经实现了同步过程。此过程从应用程序数据库中读取所有记录并将其发送到主服务器。有很多桌子。我想显示一个进度条和一个文本,告知用户应用程序正在做什么。
为此我有一个带有进度条和文本框的查看,一个 ViewModel 来更新进度条和文本中的进度值。在这个ViewModel中,我正在调用另一个函数:这个函数是一个 Web客户端(HttpClient),可以发送到我的 webapi 所有记录。对于每个重要事件(网络错误,更新状态,完成同步等),此函数会引发一个事件,以便ViewModel接收此事件并更新自身,然后更新视图。
一般来说,所有过程都在运行,但......视图非常快,并且不会逐步显示消息。我的意思是当我使用 async 调用webapi时。主程序针对客户端函数打开了很多实例,在后台应用程序调用webapi。
然后我为每次调用插入异步函数.ConfigureAwait(false)
,但我没有注意到真正的区别。
有时我收到错误
/Users/builder/data/lanes/3969/44931ae8/source/xamarin-macios/_ios-build/Library/Frameworks/Xamarin.iOS.framework/Versions/中的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() GIT中/ SRC /单声道/ MCS /类/ referencesource / mscorlib程序/系统/运行/ exceptionservices / exceptionservicescommon.cs:143
并且申请冻结了。
然后我的问题是:管理此类活动的最佳方式是什么?