C #: É possível retornar um IOrderedEnumerable ?
-
06-07-2019 - |
Pergunta
É possível retornar um IOrderedEnumerable<T>
de um método sem usar os métodos OrderBy
ou OrderByDescending
em um IEnumerable<T>
?
Im adivinhando talvez não ... mas ... talvez eu estou errado?
Motivo: Principalmente curiosidade. É apenas uma espécie de hit me ao fazer esta resposta ao voltar dígitos num número. E o meu método retornaria os dígitos em ordem crescente, de acordo com o seu peso em um dado número. Então eu pensei que poderia ser bom se eles saiu ordenado de uma maneira que o quadro iria reconhecer como ordenou também. É claro que se pode argumentar que, do ponto número de vista comum que não foram pedidos. Mas sim ... se eles devem ou não não era o ponto aqui. Apenas se era possível ou não.
Eu acho que eu também sou tipo de implicando uma pergunta (ou sou agora, pelo menos) sobre se um IOrderedEnumerable<T>
é mais do que apenas um IEnumerable<T>
com um nome diferente. Será que ela contém mais alguma coisa? Eu sei que tem os métodos ThenBy
e ThenByDescending
, mas eles usam qualquer coisa dentro do IOrderedEnumerable<T>
, ou é apenas que não faz sentido usar diretamente em uma IEnumerable<T>
?
Solução
Bem, você pode implementar IOrderedEnumerable<T>
si mesmo se você quiser também ... não é imensamente duro, dependendo do que você precisa fazer. A opção mais fácil é apenas para OrderBy
chamada / OrderByDescending
embora:)
Por que você está interessado?