Resolvendo consultas de Last ou First – Linq To Entities

0

Todos que trabalham com o conceito de ORM, como o Entity Framework por exemplo, já devem ter encontrado o seguinte erro:

LINQ To Entities does not recognize the method Last

Assim, para First, FirstOrDefault etc; Não é mesmo?

Bom, este problema é relativamente simples de ser corrigido, não é um exemplo de performance, mas resolve bem o problema sem maiores custos à aplicação

Veja:

 return context.Pessoa.OrderBy(p => p.Pessoa.Nome).OrderByDescending(x => x.Id).Take(1).Single());
            

Com isto você retorna a lista ordenando por Id e pega somente 1, assim você pega o último da lista, serve também para pegar o primeiro, utilizando a ordenação contrária.

Dica simples e fácil! 🙂

Um abraço a todos.

 

Compartilhe.

Sobre o autor

Criador do blog Código Simples e com mais 9 anos de experiência em TI, com títulos de MVP Microsoft na área de Visual Studio Development, Neo4j Top 50 Certificate, Scrum Master e MongoDB Evangelist. Atuando em funções analista, desenvolvedor, arquiteto, líder técnico e gestor de equipes. Mais informações em : http://jhonathansoares.com