Sto cercando di riutilizzare parte di una query, perché è abbastanza complesso che voglio provare a evitare la duplicazione del codice.Come riutilizzare le query di Entity Framework (utilizzando i metodi)?
Sembra che quando si chiama qualsiasi metodo all'interno di una query, si finisce con:
LINQ to Entities non riconosce il metodo metodo di {X}, e questo metodo non può essere tradotto in un espressione negozio
Quello che vorrei fare è idealmente uso:
var q = from item in context.Items
where item.SomeCondition == true
select new {Item = item, Connections = GetConnections(item)};
GetConnections
è il metodo che esegue query su item
. Sto cercando di riutilizzare la query (piuttosto complessa) in GetConnections
, ma non sono sicuro di come farlo funzionare.
Firma corrente di GetConnections è qualcosa di simile:
IQuerable<Connection> GetConnections(MyItem item)
Qualche idea su come fare la stessa cosa quando non si dispone di un 'IQuerable' ma solo 'Cliente '? È possibile? –
CustomerWithRecentOrders x = myContext.Customers .Where (c => c == myCustomer) .Select (selector) .Single() –