Réponses:
Certaines des choses que vous pourriez demander seraient.
var
mot-clé est utilisé et quand est-il le seul moyen d'obtenir le résultat d'une requête?IQueryable
et IEnumerable
interfaces.let
et into
mot - clé, et comment ils aident à faire des requêtes progressives tout en conservant l'exécution différéePour des réponses détaillées, voir ce bel article d' Oleksii
Demandez-leur de donner des exemples de moments où ils auraient tendance à ne pas utiliser LINQ et pourquoi, même si cela serait possible (et ReSharper le suggère avec enthousiasme).
Vous pouvez commencer mais demander quelles fonctionnalités de langage introduites en C # 3 sont nécessaires pour prendre en charge LINQ. Le candidat comprend-il comment des fonctionnalités telles que le mot-clé var ainsi que des types anonymes, des expressions lambda et des méthodes d'extension étaient nécessaires pour activer LINQ?
Que diriez-vous de quelques questions de codage, comme:
Les questions des manuels sont très bien (par exemple pourquoi utiliser var
), mais pour vraiment savoir si elles comprennent, faites-les simplement écrire du code.
Si vous cherchez une question à laquelle vous obtiendrez des réponses "intéressantes", vous pouvez leur demander pourquoi ils pensent que la plupart des exemples linq sont attribués en utilisant le mot-clé "var" sur le LHS ... il n'y a pas de bonne réponse et vous pourriez probablement obtenir une certaine compréhension du type de personne qu'ils sont à partir de ce qu'ils disent.
Demandez-leur des arbres d'expression. Comment le linq se transforme en sql sur le serveur de base de données la différence entre les méthodes d'extension linq et les requêtes linq
Cela dépend de ce que vous essayez d'en retirer.
quelles sont les situations dans lesquelles vous utiliseriez First et quand utiliser FirstOrDefault?
quel problème LINQ résout-il?
que se passe-t-il lorsque vous encapsulez la requête dans .ToList?
Demandez-leur de créer un petit moteur de règles, en utilisant les règles Func [] {}. Chaque règle doit être vraie, le tableau remplaçant les instructions case ou if.
Je viens de commencer sur linq et lambdas mais je pense que c'est un bon test de résolution de problèmes et d'alphabétisation linq.
En plus des suggestions plus qualifiées ici.