Générateur JSON vers classes & records C#

Entrée JSON

Chargement de l’éditeur…

C# Généré

Configuration

Saisissez du JSON pour générer des classes et records C# fortement typés pour vos projets .NET

Classes, records, DTO et propriétés avec nullable reference types

Comment convertir JSON en C# – guide étape par étape

Utilisez ce générateur JSON vers C# pour créer des classes ou des enregistrements C# à partir d'exemples JSON pour les API ASP.NET Core et les applications .NET.

  1. Étape 1 – Collez un échantillon JSON

    • Collez un objet ou un tableau JSON représentatif dans l'éditeur de gauche.
    • Incluez des objets imbriqués, des tableaux et des champs nullables afin que les types soient correctement déduits.
    • Utilisez Import pour charger JSON à partir d'un fichier, d'une URL ou d'un exemple de données.
  2. Étape 2 – Choisissez les options de classe C#

    • Définissez Class Name et Namespace pour qu'ils correspondent à la structure de votre projet.
    • Choisissez un framework JSON (System.Text.Json ou Newtonsoft.Json) si vous souhaitez des attributs.
    • Activez les types de référence nullables afin que les champs facultatifs soient mappés à string? et à des types similaires.
  3. Étape 3 – Vérifiez le code généré

    • Vérifiez les noms de champs, les types et la façon dont les tableaux/objets sont modélisés.
    • Ajustez les options telles que Root Type Name, la gestion des valeurs nulles et les frameworks si disponibles.
    • Si un champ est déduit de manière incorrecte, modifiez votre exemple JSON et régénérez-le.
  4. Étape 4 – Utiliser les DTO générés dans .NET

    • Collez la sortie dans votre projet et ajoutez-la à votre dossier API/DTO.
    • Désérialisez JSON dans le type racine à l'aide du sérialiseur de votre choix.
    • Séparez les DTO des modèles de domaine lorsque vous avez besoin de versionnage et de compatibilité ascendante.
  5. Étape 5 – Copier ou télécharger

    • Copiez la sortie dans votre projet ou téléchargez-la sous forme de fichier.
    • Exécutez votre formateur/linter pour qu'il corresponde à votre style de code.
    • Ajoutez des bibliothèques d'analyse/sérialisation JSON si votre langage l'exige.

Conseils rapides

  • Préférez les enregistrements pour les modèles immuables lorsque cela est possible.
  • Utilisez [JsonPropertyName]/[JsonProperty] lorsque les clés JSON ne correspondent pas au nom C#.
  • Validez la saisie tôt pour éviter les objets partiellement initialisés.
Exemple de résultat (simplifié)
// Entrée JSON
{
  "id": 123,
  "name": "Maeve Winters",
  "email": "[email protected]",
  "active": true,
  "roles": ["admin", "editor"],
  "metadata": { "plan": "pro" },
  "createdAt": "2024-03-01T10:15:00Z",
  "score": 99.5,
  "notes": null
}

// Generated C# DTOs (simplified)
public class Metadata
{
    public string Plan { get; set; } = string.Empty;
}

public class Root
{
    public int Id { get; set; }
    public string Name { get; set; } = string.Empty;
    public string? Email { get; set; }
    public bool Active { get; set; }
    public List<string> Roles { get; set; } = new();
    public Metadata Metadata { get; set; } = new();
    public DateTime CreatedAt { get; set; }
    public double Score { get; set; }
    public object? Notes { get; set; }
}

Outils JSON et C# associés

Explorez d'autres outils JSON et de schéma qui fonctionnent parfaitement avec ce générateur JSON vers C#.

Questions fréquentes

Quelles fonctionnalités C# sont prises en charge ?

Le générateur crée des classes C# et des records C# 9+ avec propriétés, prend en charge les attributs JSON.NET et System.Text.Json, et suit les conventions modernes .NET avec des namespaces appropriés.

Puis‑je générer des records et des DTO plutôt que seulement des classes ?

Oui ! Sélectionnez « Record » pour générer des records modernes avec propriétés immuables, idéaux pour des DTO, des contrats d’API et des value types.

Comment fonctionne la sérialisation JSON avec les types C# générés ?

Le générateur prend en charge les attributs Newtonsoft.Json et System.Text.Json pour une sérialisation/désérialisation correcte, avec noms de propriétés personnalisés, gestion du null et configuration flexible.

Et pour les nullable reference types et les champs JSON optionnels ?

Le générateur ajoute des annotations nullables (par ex. object?) pour les propriétés pouvant être null, conformément aux conventions C# modernes, afin de mapper les champs optionnels en toute sécurité.

Puis‑je utiliser le code généré dans ASP.NET Core ou Blazor ?

Oui. Le code JSON vers C# fonctionne très bien avec les contrôleurs ASP.NET Core, les minimal APIs, les composants Blazor et toute application .NET nécessitant des modèles fortement typés.

Ce générateur JSON vers C# est‑il gratuit ?

Oui, le générateur JSON vers C# de JSON Swiss est gratuit dans le navigateur. Collez du JSON, configurez les options et générez du code C# sans installer d’outils ni d’extensions.

Générateur JSON vers classes & records C# | JSONSwiss