Ho un metodo con la seguente firma:
void Method(Expression<Func<TSource, IEnumerable<TCollection>>> collectionSelector) {}
Devo ottenere il valore risultato di collectionSelector
per confrontare il risultato con un'altra istanza di IEnumerable<TCollection>
. Sto cercando di raggiungere il mio obiettivo come nel codice qui sotto, ma mi sono bloccato mentre mi è stato chiesto di fornire il valore del parametro:
var collectionSelectorFunc = collectionSelector.Compile();
var collection = collectionSelectorFunc.Invoke(collectionSelector.Parameters[0]./*???*/);
Come inserire il valore attuale del parametro?
Non c'è valore perché un parametro è un segnaposto. Un parametro rappresenta un argomento del metodo (argomento lambda in questo caso). Puoi chiamare questa funzione / espressione con qualsiasi valore. Non esiste un valore predefinito.