ho una query LINQ che sembra qualcosa di simile:Linq: semplice funzione booleana restituisce LINQ Eccezione
var query = from x in table where SomeFunctionReturnsBool() select;
private bool SomeFunctionReturnsBool()
{
return true;
}
Ciò restituisce e eccezione che dice "SomeFunctionReturnsBool non ha alcuna traduzione supportato per SQL". Ho capito che questo è perché vuole trattare "SomeFunctionReturnsBool" come espressione da valutare come SQL, ma non può.
Sebbene questa query di Linq non sia complicata, quelle reali lo sono. Come posso realizzare ciò che sto cercando di fare qui, che è quello di scomporre parti della query per renderlo più leggibile?
Jeff
UPDATE buone risposte. Sto cercando ora di lavorare con le espressioni, invece, ma questo codice mi colpisce "non può risolvere il metodo Dove (espressione lambda)":
var query = from x in table where SomeFunctionReturnsBool() select x;
private Expression<Func<EligibilityTempTable, bool>> SomeFunctionReturnsBool
{
return (x) => true;
}
risposto al commento, che mostra un modo (dubbia) di utilizzare questo approccio con sintassi di query. –