Korzystanie z funkcji zrozumieniem C# kompilatory kwerendy, można napisać kod takich jak:Kod równoważny "Let słów kluczowych w łańcuchu metodę rozszerzenia LINQ zwraca
var names = new string[] { "Dog", "Cat", "Giraffe", "Monkey", "Tortoise" };
var result =
from animalName in names
let nameLength = animalName.Length
where nameLength > 3
orderby nameLength
select animalName;
w wyrażeniu kwerendy powyżej, słowo let
pozwala wartość przekazywać dalej do miejsca i zlecać operacje bez duplikatów połączeń do animalName.Length
.
Jaki jest równoważny zestaw wywołań metod rozszerzających LINQ, który pozwala uzyskać tutaj słowo kluczowe "let"?
FYI, specyfikacja C# 3.0 wyjaśnia każdą regułę tłumaczenia ze zrozumieniem zapytań w rozdzierających szczegółach. –
i dla tych, którzy uważają, że specyfikacja jest ciężka, C# w głębi Jona Skeeta również to obejmuje ;-p –
Uwielbiam to, gdy jestem "zastanawiam się, jak słowo kluczowe" let "mapuje metody rozszerzania ... google to, ale wątpię, że moje poszukiwania znajdą coś oprócz śmieci ... SO FTW! " – Will