Ответы:
Некоторые вещи, которые вы можете спросить, будут похожи.
var
ключевое слово и когда это единственный способ получить результат запроса?IQueryable
и IEnumerable
интерфейсы.let
и into
ключевых слов, и как они помогают в создании прогрессивных запросов, но при этом сохраняют отложенное выполнениеПодробные ответы смотрите в этом приятном сообщении от Алексея
Вы можете начать с вопроса о том, какие языковые функции, представленные в C # 3, необходимы для поддержки LINQ. Понимает ли кандидат, что для включения LINQ потребовались такие функции, как ключевое слово var, а также анонимные типы, лямбда-выражения и методы расширения?
Как насчет некоторых вопросов кодирования, таких как:
Вопросы из учебников хороши (например, зачем использовать var
), но чтобы действительно узнать, понимают ли они, просто заставьте их писать код.
Если вы ищете вопрос, на который вы получите «интересные» ответы, вы можете спросить их, почему они считают, что большинство примеров linq присваиваются с использованием ключевого слова «var» в LHS ... правильного ответа нет, и вы, вероятно, могли бы получить некоторое представление о типе человека, из которого они говорят.
Спросите их о деревьях выражения. Как linq преобразуется в sql на сервере базы данных, разница между методами расширения linq и запросами linq
Зависит от того, что вы пытаетесь от них получить.
В каких ситуациях вы будете использовать First и когда использовать FirstOrDefault?
какую проблему решает LINQ?
что происходит, когда вы заключаете запрос в .ToList?
Попросите их создать небольшой движок правил, используя Func [] rules {}. Каждое правило должно быть истинным, массив заменяет регистр или оператор if.
Я только начал на linq и lambdas, но думаю, что это хороший тест для решения проблем и грамотности linq.
В дополнение к более квалифицированным предложениям здесь.