Fiz o desafio antes de ver o video de resolução. Pensei em usar enums, mas achei que teria muito trabalho então usei switch.
Primeiro mapiei o campo key:
[JsonPropertyName("key")]
public int chaveTom { get; set; }
Depois criei um propriedade Tom
public string Tom
{
get
{
string tom;
switch (chaveTom)
{
case 0:
{
tom = "C";
break;
}
case 1:
{
tom = "C#";
break;
}
case 2:
{
tom = "D";
break;
}
case 3:
{
tom = "D#";
break;
}
case 4:
{
tom = "E";
break;
}
case 5:
{
tom = "F";
break;
}
case 6:
{
tom = "F#";
break;
}
case 7:
{
tom = "G";
break;
}
case 8:
{
tom = "G#";
break;
}
case 9:
{
tom = "A";
break;
}
case 10:
{
tom = "A#";
break;
}
case 11:
{
tom = "B";
break;
}
default:
{
tom = "Não encontrado";
break;
}
}
return tom;
}
}
Mas depois olhando a forma que foi resolvida pelo Guilherme ficou bem melhor.