Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Em uma expressão de consulta, às vezes é útil armazenar o resultado de uma subexpressão para usá-la em cláusulas subsequentes. Você pode fazer isso com a let palavra-chave, que cria uma nova variável de intervalo e a inicializa com o resultado da expressão fornecida. Depois de inicializada com um valor, a variável de intervalo não pode ser usada para armazenar outro valor. No entanto, se a variável de intervalo contém um tipo queryable, ela pode ser consultada.
Exemplo
No exemplo let a seguir é usado de duas maneiras:
Para criar um tipo enumerável que pode ser consultado.
Para habilitar a consulta para chamar
ToLowerapenas uma vez na variávelwordde intervalo. Sem usarlet, você teria que chamarToLowercada predicado nawherecláusula.
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
*/
Consulte também
- LINQ (Palavras-chave de consulta)
- LINQ em C#
- LINQ (Consulta Integrada à Linguagem)
- Manipular exceções em expressões de consulta