Sto lavorando con Entity Framework 4.1 e C#.Confronto del rendimento delle query generate per Any() vs Count() in Entity Framework 4.1
Qual è il più adatto per le migliori prestazioni?
Se sì - perché? (eventuali collegamenti per letture aggiuntive)?
bool isBoarding = invoice.Allocations.Where(a => a.Service.Key == "boarding").Count() > 0;
O
bool isBoarding = invoice.Allocations.Any(a => a.Service.Key == "boarding");
'Any' è più leggibile ed è normalmente più efficiente, in quanto può utilizzare' EXISTS'. Ma in Linq-To-Entities si dovrebbe guardare lo sql generato. [A volte] (http://stackoverflow.com/a/11042691/284240) "Conteggio" sembra essere più veloce. Per Linq-To-Objects [sempre] (http://stackoverflow.com/a/305156/284240) usa 'Qualsiasi'. –
Grazie per i link utili. – Sampath