如果这个问题听起来有点笼统,我们深表歉意。我只是在寻找一些关于如何解决这个问题的一般建议:)
现在我有以下异步方法,它正在检索自定义 FileService 中的文件列表。这是在 ViewModel 的构造函数中触发的。
private async void Construct()
{
Files = new ObservableCollection<FileViewModel>();
IList _files = await _fileRepository.GetFiles();
foreach (File file in _files)
{
Files.Add(new FileViewModel(file));
}
}
正如您可能知道的那样,异步方法是在第一步中检索文件列表,然后将它们添加到列表(这是 UI 中的绑定源)到另一个。
对于用户来说,在异步过程完成之前他们什么都看不到,然后在一段时间后他们将立即看到所有结果。
在我看来,这违背了异步的意义,因为我真正想要的是在检索结果时添加结果。
要添加另一个步骤,我还有一个 linq 查询,它将每个文件的第一个字母拉入到类别中。这在 foreach 循环之后执行。我将如何去添加这一步呢?
非常感谢您提供的任何建议!