eWo*_*olf 1 c# model-view-controller multithreading winforms
我有一个后台任务,可以将文件导入数据库.我希望用户看到当前正在发生的事情(收集文件/导入文件),当前处理的文件以及任务进展的程度.我怎么能这么简单地做到这一点?模型和控制器之间的交互非常接近,我几乎可以将导入代码放入窗口的代码文件中,并直接更改进度条值等.你怎么看?你会如何解决这个问题?
使用a BackgroundWorker
,它非常适合这项任务.它可以使用该ReportProgress
方法通知UI当前进度,这会在ProgressChanged
UI线程上引发事件(这意味着您不必担心跨线程调用Invoke
)