C # / Linq: применить функцию сопоставления к каждому элементу в IEnumerable?

Я искал способ преобразовать каждый элемент IEnumerable во что-то еще с помощью функции сопоставления (совместимым с Linq способом), но я ничего не нашел.

Для (очень простого) примера он должен уметь делать что-то вроде

IEnumerable<int> integers = new List<int>() { 1, 2, 3, 4, 5 };
IEnumerable<string> strings = integers.Transform(i => i.ToString());

Но я ничего не нашел. Я имею в виду, что довольно просто написать метод расширения, который выполнит это (в основном, все, что для этого требуется, это обернуть исходный перечислитель в новый класс, а затем написать немного шаблонного кода для делегирования ему вызовов), но я ожидал это довольно элементарная операция, и писать ее самому похоже на изобретение колеса - я не могу избавиться от ощущения, что может быть встроенный способ, который я должен использовать, и я просто был слишком слеп, чтобы увидеть Это.

Итак ... есть ли в Linq что-то, что позволяет мне делать то, что я описал выше?

94
задан Andreas Baus 25 August 2011 в 08:41
поделиться