Ordernar sempre de uma forma diferente
Veja como funciona
Olá pessoal, meu nome é Mauricio Junior e hoje eu vou falar como ordernar seus dados de forma aleatória para mostrar aos usuários. No meu caso, eu preciso sempre que venha um curso diferente na tela principal e tudo misturado, uma hora vem o produto A em primeiro, outra hora vem o C, outra hora vem o E e assim por diante.
Como eu busco os dados do database e estou utilizando entity framework, eu prefiro fazer diretamente com o order by esse tipo de coisa. Veja o site www.ecode10.academy, em cada momento que você entra nele, os cursos aparecem na ordem diferente ao usuário.
Utilizado:
- Ferramenta Visual Studio ou Rider
- Linguagem de programação C#
- Framework .NET 6
- Database Framework Entity Framework
- Tipo do projeto Razor
Neste exemplo eu estou utilizando em Razor, mas da maneira que fiz pode ser utilizado em qualquer tipo de projeto. O código 1.1 mostra como gerar uma ordem para aparecer ao usuário de maneira diferente a cada vez que o método é acessado.
Código 1.1 - Mostrar todos os cursos
public List<CourseModel> GetAllCourses()
{
return _db.CourseModels.OrderBy(x => Guid.NewGuid()).ToList();
}
Dentro do bloco try eu utilizo o método OrderBy() com uma lâmbda de (x => Guid.NewGuid()) e esse é o método que faz a ordem dos cursos vir diferente em cada acesso. O segredo é utilizar o Guid.NewGuid() dentro do OrderBy, lembrando que, eu não tenho no database nenhum campo do tipo Guid, a chave principal da tabela é um Int simples; ou seja; é bem simples ordernar de forma aléatória.
Espero que tenha gostado e aprendido. Qualquer dúvida pode entrar em contato comigo pelo site www.mauriciojunior.net ou se quiser aprender mais e mais, acesse a plataforma de estudos que eu criei chamada ecode10.academy.
Subscribe ecode10.com
Receive our latest updates about programming languages, software, database, books, ebooks, classes, jobs and more.
You can cancel anytime.
Log In