Generator JSON ke Class & Record C#

Input JSON

Memuat editor…

C# Dihasilkan

Configuration

Masukkan data JSON untuk menghasilkan class C# dan record bertipe kuat untuk proyek .NET Anda

Class, record, DTO, dan properti dengan nullable reference types

Cara mengonversi JSON ke C# – panduan langkah demi langkah

Gunakan generator JSON ke C# ini untuk membuat kelas atau rekaman C# dari sampel JSON untuk ASP.NET Core API dan aplikasi .NET.

  1. Langkah 1 – Tempelkan sampel JSON

    • Tempelkan objek atau larik JSON yang representatif ke editor kiri.
    • Sertakan objek bertumpuk, array, dan bidang nullable sehingga jenis dapat disimpulkan dengan benar.
    • Gunakan Import untuk memuat JSON dari file, URL, atau data sampel.
  2. Langkah 2 – Pilih opsi kelas C#

    • Tetapkan Class Name dan Namespace agar sesuai dengan struktur proyek Anda.
    • Pilih kerangka kerja JSON (System.Text.Json atau Newtonsoft.Json) jika Anda menginginkan atribut.
    • Aktifkan jenis referensi yang dapat dibatalkan sehingga bidang tertentu dipetakan ke string? dan jenis serupa.
  3. Langkah 3 – Tinjau kode yang dihasilkan

    • Periksa nama bidang, tipe, dan bagaimana array/objek dimodelkan.
    • Sesuaikan opsi seperti Root Type Name, penanganan null, dan kerangka kerja jika tersedia.
    • Jika suatu bidang disimpulkan dengan salah, sesuaikan sampel JSON Anda dan buat ulang.
  4. Langkah 4 – Gunakan DTO yang dihasilkan di .NET

    • Tempel hasilnya ke proyek Anda dan tambahkan ke folder API/DTO Anda.
    • Deserialisasi JSON ke dalam tipe root menggunakan serializer pilihan Anda.
    • Pisahkan DTO dari model domain saat Anda memerlukan versi pembuatan dan kompatibilitas mundur.
  5. Langkah 5 – Salin atau unduh

    • Salin hasilnya ke proyek Anda atau unduh sebagai file.
    • Jalankan formatter/linter Anda agar sesuai dengan gaya kode Anda.
    • Tambahkan pustaka penguraian/serialisasi JSON jika bahasa Anda memerlukannya.

Kiat cepat

  • Lebih suka rekaman untuk model yang tidak dapat diubah jika memungkinkan.
  • Gunakan [JsonPropertyName]/[JsonProperty] ketika kunci JSON tidak cocok dengan penamaan C#.
  • Validasi input lebih awal untuk menghindari objek yang diinisialisasi sebagian.
Contoh keluaran (disederhanakan)
// masukan 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; }
}

Alat JSON & C# terkait

Jelajahi lebih banyak alat JSON dan skema yang berfungsi baik bersama generator JSON ke C# ini.

Pertanyaan yang Sering Diajukan

Fitur C# apa yang didukung di generator JSON ke C# ini?

Generator membuat class C# dan record C# 9+ dengan properti, mendukung atribut JSON.NET dan System.Text.Json, serta mengikuti konvensi penamaan .NET modern dengan namespace yang rapi.

Bisakah saya menghasilkan record C# dan model DTO, bukan hanya class?

Ya! Pilih 'Record' sebagai framework untuk menghasilkan record C# modern dengan properti immutable yang ideal untuk data transfer object (DTO), kontrak API, dan value type.

Bagaimana serialisasi JSON bekerja dengan tipe C# yang dihasilkan?

Generator mendukung atribut Newtonsoft.Json dan System.Text.Json untuk serialisasi dan deserialisasi JSON yang benar dengan nama properti kustom, penanganan null, dan konfigurasi yang fleksibel.

Bagaimana dengan nullable reference types dan field JSON opsional?

Generator menyertakan anotasi nullable (object?) untuk properti yang dapat bernilai null, mengikuti konvensi nullable reference types C# modern dan memudahkan pemetaan field JSON opsional dengan aman.

Bisakah saya menggunakan class C# yang dihasilkan di proyek ASP.NET Core atau Blazor?

Bisa. Kode JSON ke C# berfungsi baik di controller ASP.NET Core, minimal API, komponen Blazor, dan aplikasi .NET apa pun yang membutuhkan model bertipe kuat untuk payload JSON.

Apakah generator JSON ke C# ini gratis digunakan?

Ya, generator JSON Swiss JSON ke C# gratis digunakan di browser. Anda dapat menempel JSON, mengatur opsi, dan menghasilkan kode C# tanpa menginstal alat atau ekstensi apa pun.

Generator JSON ke Class & Record C# | JSONSwiss