Ecco alcuni codice che (ovviamente) non compila:Sintassi per eseguire il blocco di codice all'interno della query di Linq?
var q = from x in myAnonymousTypeCollection
select new {
x.ID,
CalcField = {
switch(x.SomeField) {
case 1:
return Math.Sqrt(x.Field1);
case 2:
return Math.Pow(x.Field2, 2);
default:
return x.Field3;
}
}
};
Si ottiene l'immagine; Sto cercando di calcolare CalcField
in un modo completamente diverso, a seconda di quale sia il valore di SomeField
. Non riesco a utilizzare uno Func<>
(o posso?), Perché il tipo di input è anonimo. Quindi qual è la sintassi giusta per farlo funzionare?
È questo Linq to Objects? – cadrell0
Utilizzare una lambda o una funzione anonima. –
@ofstream - So che potrei farlo usando un lambda, ma per ragioni di leggibilità nel mio codice attuale, voglio usare la sintassi della query. –