Stavo cercando un modo per trasformare ogni elemento di un IEnumerable in qualcos'altro utilizzando una funzione di mappatura (in un modo compatibile con Linq) ma non ho trovato nulla.
Per un esempio (molto semplice), dovrebbe essere in grado di fare qualcosa come
IEnumerable<int> integers = new List<int>() { 1, 2, 3, 4, 5 };
IEnumerable<string> strings = integers.Transform(i => i.ToString());
Ma non ho trovato niente. Voglio dire, è abbastanza semplice scrivere un metodo di estensione che lo faccia (in pratica, tutto ciò che richiede è avvolgere l'enumeratore di origine in una nuova classe e quindi scrivere un po 'di codice boilerplate per delegare le chiamate ad esso), ma mi sarei aspettato questa è un'operazione abbastanza elementare, e scriverla io stesso sembra come reinventare la ruota - non riesco a scrollarmi di dosso la sensazione che potrebbe esserci un modo integrato che dovrei usare, e sono stato troppo cieco per vedere esso.
Quindi ... c'è qualcosa in Linq che mi permette di fare ciò che ho descritto sopra?