Bonjour
Quand on écrit une requete linq, j'aimerais savoir comment savoir si la partie méthode d'extension (par exemple un filtre where) sera exécuté coté Base de données donc en SQL, ou si le framework récuperera toutes les données pour ensuite les filtrer
Car pour l'exemple suivant (une table CLIENT liée à une table ORDER qui contient les commandes des clients) :
quand je regarde dans SQL Profiler, je m'apercois que la requete est basique, et ne contient pas de clause where pour le filtre sur le champ ORDER_MT
Code : Sélectionner tout - Visualiser dans une fenêtre à part myDataContext.CLIENTs.Select(cc=>cc).Take(1).Single().ORDERs.Where(o => o.ORDER_MT < 233).Average(o => o.ORDER_MT);
Si par contre j'effectue la requete avec le langage d'expression au lieu des méthodes d'expression ,la requete SQL change et se produit en base avec le filtre where
Merci de m'aider, est ce que ca depend de IEnumerable et IQueryable ??
Partager