Siguiendo su excepción, el área del problema está dentro de donde está haciendo Where
declaraciones.
Como dije en mi comentario. Intenta hacer:
var v = collection.AsQueryable<Company>().Where(cpy => cpy.Dealers.Any(dlr => dlr.Stores.Count == 1));
Actualmente estás haciendo algo como:
var dealers = collection.AsQueryable<Company>().Select(cpy => cpy.Dealers);
var dealersWithStores = dealers.Where(dealer => dealer.Stores.Count == 1);
A continuación, está comprobando si hay any
distribuidores con tiendas llamando a count y verificando si es más de 0 para obtener su bool
en el donde. Todo esto es lo mismo que llamar a IEnumerable.Any()
. ¿A ver si esto funciona? :)