(OBS: Este post é continuação do artigo LINQ Extensions)
Single: Retorna um único elemento de uma coleção ou gera uma exceção se não houver apenas um elemento que satisfaça a condição da expressão lambda.
// Single: Retorna um único elemento de uma coleção ou
// gera uma exceção se não há apenas um elemento
// que satisfaça a condição da expressão lambda.
// Exemplo 1: com erro, pois exitem 2 pessoas com 32 anos
try
{
Pessoa pessoaSingle1 = Pessoas.Single(p => p.Idade == 32);
Console.WriteLine(pessoaSingle1.Nome);
}
catch (Exception ex)
{
Console.WriteLine("Erro: {0}", ex.Message);
}
// Resultado no console:
// Erro: Sequence contains more than one matching element
// Exemplo 2: José é o único com 28 anos
Pessoa pessoaSingle2 = Pessoas.Single(p => p.Idade == 28);
Console.WriteLine(pessoaSingle2.Nome);
// Resultado no console:
// José



