Summary
Applies an accumulator function over an observable sequence, returning the result of the aggregation as a single element in the result sequence. The specified seed value is used as the initial accumulator value.
For aggregation behavior with incremental intermediate results, see System.Reactive.Linq.Observable.Scan``2(System.IObservable{``0},``1,System.Func{``1,``0,``1}).
Syntax
public static IObservable<TAccumulate> Reduce<TSource, TAccumulate>(this IObservable<TSource> source, TAccumulate seed, Func<TAccumulate, TSource, TAccumulate> accumulator)
The return type of this operator differs from the corresponding operator on IEnumerable in order to retain asynchronous behavior.
Type Parameters
| Name |
Description |
| TSource |
The type of the elements in the source sequence. |
| TAccumulate |
The type of the result of the aggregation. |
Parameters
| Name |
Type |
Description |
| source |
IObservable<TSource> |
An observable sequence to aggregate over. |
| seed |
TAccumulate |
The initial accumulator value. |
| accumulator |
Func<TAccumulate, TSource, TAccumulate> |
An accumulator function to be invoked on each element. |
Return Value
| Type |
Description |
| IObservable<TAccumulate> |
An observable sequence containing a single element with the final accumulator value. |