Pular para o conteúdo principal
DevTools by Decussi
  • Ferramentas
  • Dados
  • Segurança
  • Rede
  • Texto
  • Data
  • Web
  • Dev
  • SEO
  • Brasil
Ferramentas
  1. Início
  2. /Ferramentas
  3. /Dados
  4. /JSON para C#

JSON para C# – Gere classes ou records a partir do JSON

Converta um JSON em classes C# ou records, com tipos inferidos, propriedades e classes aninhadas prontas para o projeto .NET.

Código gerado
using System.Collections.Generic;
using System.Text.Json.Serialization;

public class Endereco
{
    [JsonPropertyName("cidade")]
    public string Cidade { get; set; }

    [JsonPropertyName("uf")]
    public string Uf { get; set; }
}

public class Root
{
    [JsonPropertyName("id")]
    public long Id { get; set; }

    [JsonPropertyName("nome")]
    public string Nome { get; set; }

    [JsonPropertyName("ativo")]
    public bool Ativo { get; set; }

    [JsonPropertyName("saldo")]
    public double Saldo { get; set; }

    [JsonPropertyName("tags")]
    public List<string> Tags { get; set; }

    [JsonPropertyName("endereco")]
    public Endereco Endereco { get; set; }

    [JsonPropertyName("ultimoAcesso")]
    public object? UltimoAcesso { get; set; }
}

Os tipos são inferidos do exemplo: campos ausentes em parte dos itens de um array viram opcionais, e valores null viram anuláveis. Tudo roda no navegador — o JSON não é enviado a nenhum servidor.

Como usar esta ferramenta

  1. Cole o JSON de exemplo
  2. Escolha entre classe e record
  3. Copie o código gerado
  4. Ajuste namespace e atributos no projeto

Sobre esta ferramenta

O que é

Record em C# é um tipo de referência voltado a dados, com igualdade por valor e sintaxe enxuta. Classes continuam sendo a escolha quando é preciso mutabilidade ou herança complexa.

Quando usar

  • Modelar a resposta de uma API consumida por um serviço .NET
  • Criar DTOs de integração com sistema legado
  • Converter payload de fila em objeto tipado
  • Gerar a base da desserialização com System.Text.Json
  • Evitar digitar dezenas de propriedades

Perguntas frequentes

Como mapear snake_case do JSON para PascalCase?
Use JsonPropertyName no atributo da propriedade, ou configure PropertyNamingPolicy no JsonSerializerOptions para converter automaticamente.
Campos que podem vir nulos são marcados?
O gerador infere pelo exemplo colado. Com nullable reference types ativado, revise quais propriedades devem receber ? no tipo.
Record ou class para DTO?
Record cobre bem o caso de dados que só trafegam, por causa da igualdade por valor e da sintaxe curta. Class quando o objeto precisa mudar de estado.

Ferramentas relacionadas

  • {}JSON Viewer
  • 📐Formatador de JSON
  • 📦Minificador de JSON
  • ✓Validador de JSON
  • ↔Comparador de JSON
  • YMYAML ↔ JSON
DevTools

Ferramentas para desenvolvedores, em português. Sem cadastro e sem instalação.

Criado e mantido por Decussi

Ferramentas

  • Todas as ferramentas
  • Dados
  • Segurança
  • Rede
  • Texto
  • Data
  • Web
  • Dev
  • SEO
  • Brasil

Referência

  • Consulta rápida
  • Guias
  • Códigos HTTP
  • Cron
  • Checagens de SEO

Desenvolvedores

  • API e devs
  • llms.txt
  • ai.txt
  • Sitemap

Newsletter

Receba novidades e novas ferramentas no seu email.

Sugira uma ferramenta

Tem uma ideia? Envie sua sugestão.