Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

277
Visualizações
C # Ordenar matriz por múltiples condiciones diferentes

Obtuve una matriz que contiene elementos del objeto 'Persona'

ES

Necesito tener las personas especiales arriba (aquellas ordenadas por Id) y las personas no especiales abajo (aquellas ordenadas alfabéticamente). Debe tener un aspecto como este:

DEBERÍAN

¿Hay alguna forma de ordenarlo así sin tener que dividir la lista, ordenarla individualmente y luego volver a fusionarla?

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Primero puede OrderBy por Special (tenga en cuenta que false < true ) y luego puede usar la condición dentro de ThenBy de esta manera:

 var result = persons .OrderBy(person => person.Special != "Yes") .ThenBy(person => person.Special == "Yes" ? person.Id : 0) .ThenBy(person => person.Special == "Yes" ? "" : person.Name);
over 4 years ago · Santiago Trujillo Relatório

0

Una versión sin linq:

 list.Sort((a, b) => { if (a.Special != b.Special) { return a.Special ? -1 : 1; } return a.Name.CompareTo(b.Name); });
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda