Collect

Transforma cada elemento da coleção em um novo IEnumerable<TResult>, depois disso, todos os resultados são unidos em uma única coleção.

Parâmetros

Retorno

Func<T, IEnumerable<TResult>> mapping

IEnumerable<T> source

IEnumerable<TResult>

Como usar

É gerada uma nova coleção aplicando a função mapping em cada um dos elementos. Depois disso, todas as coleções resultantes são unidas.

Esta função atua de forma semelhante à um SelectMany.

Gerando uma nova coleção

//IEnumerable<int> source = { 1, 2, 3 }

IEnumerable<int> GenerateNumbers(int value)
{
    for(int index = 1; index <= 3; index++)
        yield return value * 10;
}

IEnumerable<int> result = source.Collect(GenerateNumbers);

//result = = { 10, 20, 30, 20, 40, 60, 30, 60, 90 }

Last updated