LINQ ORDER BY CONDICIONAL

MAXCIM 27/08/2016 17:19:48
#466226
Olá amigos, tudo bem?

como eu aplico uma ordenação a um objeto list ( LINQ) de forma condicional?

na tela de pesquisa tenho um combobox de como a pessoa deseja ordenar a lista , e tbm um option com opção crescente /decrescente.


com o filtro eu uso o predicatebuilder, onde posso aplicar qualquer filtro , e o Order by? tem como ?


hoje eu uso um select case com todas as opções do combo e um IF em cada opção crescente ou decrescente.
tem que haver uma maneira de simplificar isso!
DS2T 28/08/2016 09:14:13
#466231
Resposta escolhida
Você quer indicar dinamicamente seu Order By, é isso?

é simples... você pode usar Reflection para isso, fica muito bom.

string nomeDaSuaPropriedade= [Ô]Cidade[Ô];
var propriedade = typeof(TipoObjeto).GetProperty(nomeDaSuaPropriedade);
var ordenaPorCidade = suaColecao.OrderBy(x => propriedade .GetValue(x, null));
MAXCIM 28/08/2016 12:00:04
#466236
perfeito DS2T, serviu direitinho!
valeu mesmo! brigadãoooooo!!!!!
Tópico encerrado , respostas não são mais permitidas