Share via


Observable.ToDictionary<TSource, TKey> Method (IObservable<TSource>, Func<TSource, TKey>, IEqualityComparer<TKey>)

Creates a dictionary from an observable sequence according to a specified key selector function, and a comparer.

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

Syntax

'Declaration
<ExtensionAttribute> _
Public Shared Function ToDictionary(Of TSource, TKey) ( _
    source As IObservable(Of TSource), _
    keySelector As Func(Of TSource, TKey), _
    comparer As IEqualityComparer(Of TKey) _
) As IObservable(Of IDictionary(Of TKey, TSource))
'Usage
Dim source As IObservable(Of TSource)
Dim keySelector As Func(Of TSource, TKey)
Dim comparer As IEqualityComparer(Of TKey)
Dim returnValue As IObservable(Of IDictionary(Of TKey, TSource))

returnValue = source.ToDictionary(keySelector, _
    comparer)
public static IObservable<IDictionary<TKey, TSource>> ToDictionary<TSource, TKey>(
    this IObservable<TSource> source,
    Func<TSource, TKey> keySelector,
    IEqualityComparer<TKey> comparer
)
[ExtensionAttribute]
public:
generic<typename TSource, typename TKey>
static IObservable<IDictionary<TKey, TSource>^>^ ToDictionary(
    IObservable<TSource>^ source, 
    Func<TSource, TKey>^ keySelector, 
    IEqualityComparer<TKey>^ comparer
)
static member ToDictionary : 
        source:IObservable<'TSource> * 
        keySelector:Func<'TSource, 'TKey> * 
        comparer:IEqualityComparer<'TKey> -> IObservable<IDictionary<'TKey, 'TSource>> 
JScript does not support generic types and methods.

Type Parameters

  • TSource
    The type of source.
  • TKey
    The type of key.

Parameters

  • source
    Type: System.IObservable<TSource>
    An observable sequence to create a dictionary for.
  • keySelector
    Type: System.Func<TSource, TKey>
    A function to extract a key from each element.

Return Value

Type: System.IObservable<IDictionary<TKey, TSource>>
The dictionary from an observable sequence according to a specified key selector function, and a comparer.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IObservable<TSource>. When you use instance method syntax to call this method, omit the first parameter. For more information, see or .

See Also

Reference

Observable Class

ToDictionary Overload

System.Reactive.Linq Namespace