Quando sto cercando di compilare il seguente codice:
var post = iPostService.GetAll().Select(x => (x.Title, x.Author));
Ottengo l'errore del compilatore: 'Un albero di espressioni non può contenere una tupla letterale'.
Quindi ho provato anche questo:
var post = iPostService.GetAll().
Select(x => new ValueTuple<string, string>(x.Title, x.Author))
Il risultato è l'errore di runtime: 'Impossibile risolvere il metodo Void .ctor (System.String, System.String) perché il tipo di dichiarazione del metodo gestisce System.ValueTuple`2 [T1, T2] è generico. Fornisci esplicitamente il tipo di dichiarazione a GetMethodFromHandle. '
Ho cercato su Google la soluzione a questo problema, ma nulla di veramente utile.
Qualsiasi aiuto davvero apprezzato.
Grazie
Finalmente, ho scoperto cosa non va nel mio codice:
Spero che funzioni con il tuo codice.
Funziona per me, crea prima una tupla e convertila in ValueTuple:
var post = iPostService.GetAll().
Select(x => new Tuple<string, string>(x.Title, x.Author).ToValueTuple())