Odpowiedzi:
Niektóre z rzeczy, o które możesz zapytać, byłyby.
var
słowo kluczowe jest używane i kiedy jest to jedyny sposób na uzyskanie wyniku zapytania?IQueryable
i IEnumerable
interfejsy.let
i into
słowo kluczowe oraz sposób, w jaki pomagają w tworzeniu zapytań progresywnych, ale nadal zachowują odroczoną realizacjęAby uzyskać szczegółowe odpowiedzi, zobacz ten miły post autorstwa Oleksii
Poproś, aby podać przykłady czasach kiedy mają tendencję do nie używać LINQ i dlaczego, chociaż byłoby to możliwe (i ReSharper podnieceniu Sugeruje).
Możesz zacząć od pytania, jakie funkcje językowe wprowadzone w C # 3 są potrzebne do obsługi LINQ. Czy kandydat rozumie, w jaki sposób funkcje takie jak słowo kluczowe var, anonimowe typy, wyrażenia lambda i metody rozszerzenia były potrzebne do włączenia LINQ?
Co powiesz na niektóre pytania kodujące, takie jak:
Pytania z podręczników są w porządku (np. Po co korzystać var
), ale aby naprawdę dowiedzieć się, czy rozumieją, po prostu poproś ich o napisanie kodu.
Jeśli szukasz pytania, na które uzyskasz „interesujące” odpowiedzi, możesz zapytać, dlaczego według nich większość przykładów linq przypisuje za pomocą słowa kluczowego „var” na LHS ... nie ma właściwej odpowiedzi i prawdopodobnie możesz uzyskać wiedzę na temat rodzaju osoby, z której pochodzą.
Zapytaj ich o drzewa ekspresji. Jak linq przekształca się w sql na serwerze bazy danych, różnica między metodami rozszerzenia linq a zapytaniami linq
Zależy, co próbujesz z nich wydostać.
Poproś, aby zbudowali mały silnik reguł, używając zasad Func [] {}. Każda reguła musi być prawdziwa, tablica zastępuje wielkość liter lub instrukcje if.
Właśnie zacząłem od linq i lambdas, ale myślę, że to niezły test rozwiązywania problemów i znajomości linq.
Oprócz bardziej wykwalifikowanych sugestii tutaj.