Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W wyrażeniu zapytania może być przydatne przechowywanie wyniku wyrażenia podrzędnego, aby można było go użyć w późniejszych klauzulach. Użyj słowa kluczowego let , aby utworzyć nową zmienną zakresu i zainicjować ją za pomocą wyniku wyrażenia. Po zainicjowaniu zmiennej zakresu przy użyciu wartości nie można przypisać jej innej wartości. Jeśli jednak zmienna zakresu zawiera typ z możliwością wykonywania zapytań, możesz wykonać zapytanie względem niej.
Dokumentacja języka C# zawiera ostatnio wydaną wersję języka C#. Zawiera również początkową dokumentację dla funkcjonalności w publicznych wersjach testowych nadchodzącego wydania języka.
Dokumentacja identyfikuje dowolną funkcję po raz pierwszy wprowadzoną w ostatnich trzech wersjach języka lub w bieżącej publicznej wersji zapoznawczej.
Wskazówka
Aby dowiedzieć się, kiedy funkcja została po raz pierwszy wprowadzona w języku C#, zapoznaj się z artykułem dotyczącym historii wersji języka C#.
W poniższym przykładzie let użyto dwóch sposobów:
- Tworzy typ wyliczalny, którego można wykonać zapytanie.
- Umożliwia ona wywołanie
ToLowerzapytania tylko raz w zmiennejwordzakresu . Bez użycia metodyletnależy wywołaćToLowerw każdym predykacie w klauzuliwhere.
class LetSample1
{
static void Main()
{
string[] strings =
[
"A penny saved is a penny earned.",
"The early bird catches the worm.",
"The pen is mightier than the sword."
];
// Split the sentence into an array of words
// and select those whose first letter is a vowel.
var earlyBirdQuery =
from sentence in strings
let words = sentence.Split(' ')
from word in words
let w = word.ToLower()
where w[0] == 'a' || w[0] == 'e'
|| w[0] == 'i' || w[0] == 'o'
|| w[0] == 'u'
select word;
// Execute the query.
foreach (var v in earlyBirdQuery)
{
Console.WriteLine($"\"{v}\" starts with a vowel");
}
}
}
/* Output:
"A" starts with a vowel
"is" starts with a vowel
"a" starts with a vowel
"earned." starts with a vowel
"early" starts with a vowel
"is" starts with a vowel
*/
Zobacz też
- Słowa kluczowe języka zapytań (LINQ)
- LINQ w C#
- Zintegrowane Zapytania Językowe (LINQ)
- Obsługa wyjątków w wyrażeniach zapytań