Linq.SingleOrDefault - Dmitry-Bychenko/Amphisbaena GitHub Wiki

SingleOrDefault

Single (or default on empty reader) item in ChannelReader. InvalidOperationException exception is thrown when reader has more then one item.

Declaration (has overloads)

public static async Task<T> SingleOrDefault<T>(this ChannelReader<T> reader,
                                                    Func<T, bool> condition,
                                                    T defaultValue,
                                                    ChannelParallelOptions options)

Example

using Amphisbaena;
using Amphisbaena.Linq;

...

int[] data = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9};

int single = await data
  .ToChannelReader()
  .Where(item => item > 3.5 && item < 4.7) 
  .SingleOrDefault();
⚠️ **GitHub.com Fallback** ⚠️