Observable.Zip<TFirst, TSecond, TResult> Method (IObservable<TFirst>, IEnumerable<TSecond>, Func<TFirst, TSecond, TResult>)

Merges an observable sequence and an enumerable sequence into one observable sequence by using the selector function.

Namespace:  System.Reactive.Linq
Assembly:  System.Reactive (in System.Reactive.dll)

public static IObservable<TResult> Zip<TFirst, TSecond, TResult>(
	this IObservable<TFirst> first,
	IEnumerable<TSecond> second,
	Func<TFirst, TSecond, TResult> resultSelector

Type Parameters


The first type.


The second type.


The type of result.


Type: System.IObservable<TFirst>
The first observable source.
Type: System.Collections.Generic.IEnumerable<TSecond>
The second enumerable source.
Type: System.Func<TFirst, TSecond, TResult>
The function to invoke for each consecutive pair of elements from the first and second source.

Return Value

Type: System.IObservable<TResult>
An observable sequence containing the result of pairwise combining the elements of the first and second source using the specified result selector function.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IObservable<TFirst>. When you use instance method syntax to call this method, omit the first parameter. For more information, see https://msdn.microsoft.com/en-us/library/bb384936(v=vs.103).aspx or https://msdn.microsoft.com/en-us/library/bb383977(v=vs.103).aspx.