假设你在C#中有10个互相调用的函数。它们都工作得很好。后来最底层的函数发生了变化,所以它需要调用一个API和await之类的东西。这意味着函数必须是async。现在每个调用该函数的函数也必须是await & async。有什么办法可以打破它吗?事实上,我必须将所有与async函数相关的函数更改为async函数。这很麻烦,我想知道是否有类似FutureBuilder for C#的东西?
await
async
4jb9z9bj1#
FutureBuilder是一种构建UI的方法,该UI在将来完成时对其作出React。.NET中没有内置的东西可以做类似的事情,但是构建自己的或使用库中的东西并不难,库解决方案包括MvxNotifyTask from MvvmCross、ObservableObject.TaskNotifier from the .NET Community Toolkit / MVVM Toolkit v7(以前称为NotifyTaskCompletion<T> in v6)或NotifyTask<T> in Nito.Mvvm.Async。大多数实现或多或少都是从this old article of mine派生的,但是请注意,当从已经完成的任务创建NotifyTaskCompletion<T>时,本文的示例代码有一个bug,因此不要使用它;请使用上面的实现之一或编写自己的实现。
FutureBuilder
MvxNotifyTask
ObservableObject.TaskNotifier
NotifyTaskCompletion<T>
NotifyTask<T>
1条答案
按热度按时间4jb9z9bj1#
FutureBuilder
是一种构建UI的方法,该UI在将来完成时对其作出React。.NET中没有内置的东西可以做类似的事情,但是构建自己的或使用库中的东西并不难,库解决方案包括
MvxNotifyTask
from MvvmCross、ObservableObject.TaskNotifier
from the .NET Community Toolkit / MVVM Toolkit v7(以前称为NotifyTaskCompletion<T>
in v6)或NotifyTask<T>
in Nito.Mvvm.Async。大多数实现或多或少都是从this old article of mine派生的,但是请注意,当从已经完成的任务创建
NotifyTaskCompletion<T>
时,本文的示例代码有一个bug,因此不要使用它;请使用上面的实现之一或编写自己的实现。