A Better Enumerable.Range

Pessoalmente, eu não gosto muito disso:, Enumerable.Range(0, GetTotalEmployees())pelo menos quando comparado a fazer algo mais parecido com isto:

(0).To(TotalEmployees)
.Where(a => a % 2 == 0)
.ToList()

// Output:
// 0, 2, 4, ... , 6, 8... 2n

Simplesmente adicionando esta extensão em algum lugar:

public static IEnumerable<int> To(this int from, int to)
{
for (int i = from; i < to; i++)
{
yield return i;
}
}

É certo que poderia ser mais robusto

  1. Verifique se fromé menor que to.
  2. Adicione o parâmetro opcional para a etapa.
  3. Parametrização de tipo com base no tipo de passo ou do toparâmetro para que possa produzir ints ou duplos.

Mas na maior parte isso funciona bem.