En passant par votre exception, la zone problématique se situe dans l'endroit où vous faites Where
déclarations.
Comme je l'ai dit dans mon commentaire. Essayez de faire :
var v = collection.AsQueryable<Company>().Where(cpy => cpy.Dealers.Any(dlr => dlr.Stores.Count == 1));
Vous faites actuellement quelque chose comme :
var dealers = collection.AsQueryable<Company>().Select(cpy => cpy.Dealers);
var dealersWithStores = dealers.Where(dealer => dealer.Stores.Count == 1);
Vous vérifiez alors s'il y a any
concessionnaires avec des magasins en appelant count et en vérifiant s'il est supérieur à 0 pour obtenir votre bool
dans le où. Tout cela revient à appeler IEnumerable.Any()
. Voir si cela fonctionne? :)