Reactive Extensions具有以下三种方法:
ToTask
:返回一个任务,该任务将接收最后的值或可观察序列产生的异常。LastAsync
:返回可观察序列的最后一个元素RunAsync
:获取一个等待者,该等待者返回可观察序列的最后一个值,或者如果序列为空,则引发异常。它们听起来很相似。我将如何选择使用哪一个?
您应根据要使用的返回值进行选择,因为这些方法具有不同的返回类型和不同的功能。如果只想await
最后一个结果,则可以使用上述任何方法,因为在这种情况下它们提供相同的行为。它们都在等待时处理空的可观察到的集合和异常。