JSON para Classe C#
Converta JSON em uma classe C# com propriedades auto-implementadas. Detecta tipos primitivos, listas, arrays e objetos aninhados. Útil para .NET/Unity. Tudo no navegador.
Modelar a resposta da API em classes .NET
Você vai consumir uma API em .NET e precisa das classes que o System.Text.Json ou o Newtonsoft vão preencher. É trabalho mecânico, e é justamente onde escapa o erro caro: um valor monetário que virou inteiro, uma lista que ficou de fora. Cole o JSON de exemplo e a classe sai com propriedades auto implementadas e os objetos aninhados já em classes separadas.
Os tipos vêm do valor: texto vira string, booleano vira bool, número inteiro vira long, número com decimal vira double, nulo vira object e array vira List do tipo do primeiro elemento. A diferença importante em relação ao gerador de Java está no nome: aqui as propriedades são convertidas para PascalCase, então first_name vira FirstName. Isso segue a convenção do C#, mas quebra a desserialização se o JSON for snake_case e você não configurar nada.
Antes de colar no projeto: se o campo é dinheiro, troque double por decimal, porque double arredonda em base dois e você não quer isso numa fatura. Nullability não é anotada, então acrescente a interrogação onde o contrato permitir nulo. Duas chaves com o mesmo nome em pontos diferentes do JSON geram uma classe só, a primeira que apareceu. Array vazio vira List de object por falta de amostra. A conversão acontece no navegador.
Perguntas frequentes
Como faço as propriedades baterem com JSON em snake_case?
Serve para Unity?
E quando o array vem vazio no exemplo?
Ferramentas Relacionadas
JSON para Classe Java
Converta JSON em uma classe Java (POJO) com getters/setters e tipos inferidos automaticamente. Suporta classes aninhadas e arrays como List. Tudo no navegador.
Conversor JSON ⇄ Query String
Converta um objeto JSON plano em query string (?a=1&b=2) e vice-versa. Suporta arrays no estilo a[]=1&a[]=2. Tudo no navegador.
Conversor BSON para JSON (texto)
Explica diferenças entre BSON (binário) e JSON, com tabela de tipos e exemplos de conversão textual.