Linq.ToDictionaryAsync - Dmitry-Bychenko/Amphisbaena GitHub Wiki
Convert ChannelReader to Dictionary.
public static async Task<Dictionary<K, V>> ToDictionaryAsync<T, K, V>(this ChannelReader<T> source,
Func<T, K> key,
Func<T, V> value,
IEqualityComparer<K> comparer,
ChannelParallelOptions options)using Amphisbaena;
using Amphisbaena.Linq;
...
int[] data = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9};
var dict = await data
.ToChannelReader()
.ToDictionaryAsync(item => item,
item => item * item);