1
resposta

Mapeando o Key

A solução que fiz para o mapeamento do key foi diferente do jeito que ensinaram posteriormente, acredito que o outro meio criando uma private string e uma outra propriedade, que retorna a string[key]? Eu usei switch e um função string

Minha solução:

[JsonPropertyName("key")]
public int KeyMusica { get; set; }

 public string KeyConvertida()
 {
     switch (KeyMusica)
     {
         case 0: return "C";
         case 1: return "C#";
         case 2: return "D";
         case 3: return "D#";
         case 4: return "E";
         case 5: return "F";
         case 6: return "F#";
         case 7: return "G";
         case 8: return "G#";
         case 9: return "A";
         case 10: return "A#";
         case 11: return "B";
         default: return "Inválido";
     }
 }

Funcionou da mesma maneira, mas queria saber qual solução é melhor.

1 resposta

Oii, Tomaz, tudo bem?

A sua solução com um switch funciona perfeitamente bem. Ela é clara, direta e fácil de entender.

Por outro lado, a solução proposta no curso, que envolve a criação de uma string privada e uma propriedade que retorna a string[key], pode ser mais flexível e escalável.

Se você precisasse adicionar mais keys no futuro, seria mais fácil adicionar novos elementos a uma string ou a um array do que adicionar mais casos ao seu switch.

Então, saiba que ambas as soluções estão certas e não há uma solução ideal - ela depende muito do que você for aplicar ou qual método você prefere se aproximar pro seu projeto.

Se outra dúvida surgir, estamos aqui.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.