typestar

Cláusulas let en C#

Nombrar un valor intermedio una vez y usarlo tres veces.

var words = new[] { "kernel", "shell", "compiler", "linker" };

// let nombra un valor intermedio dentro de la consulta
var report =
    from w in words
    let vowels = w.Count(c => "aeiou".Contains(c))
    where vowels >= 2
    orderby vowels descending, w
    select $"{w}: {vowels} vowels";

Console.WriteLine(string.Join("\n", report));

Cómo funciona

  1. let vowels = ... calcula por elemento y queda en el ámbito.
  2. where y orderby lo reutilizan sin recalcular a mano.
  3. El select construye su cadena desde la misma vinculación.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
11
Caracteres a escribir
321
Tokens
66
Ritmo de tres estrellas
90 tpm

Al ritmo de tres estrellas de 90 tokens por minuto, este intento toma unos 44 segundos.

Escribe este fragmento

Paso 2 de 3 en Sintaxis de consulta; paso 11 de 17 en LINQ a fondo.

← Anterior Siguiente →