F # List.map эквивалент в C #?

Есть ли эквивалент C # функции List.map в C #? т.е. применить функцию к каждому элементу в списке и вернуть новый список, содержащий результаты.

Что-то вроде:

    public static IEnumerable<TResult> Map<TSource, TResult>(this IEnumerable<TSource> source, Func<TSource, TResult> funky)
    {
        foreach (TSource element in source)
            yield return funky.Invoke(element);
    }

Уже есть встроенный способ или мне просто написать собственное расширение?

Ответы на вопрос(2)

Ваш ответ на вопрос