Trình tạo Lớp & Record C# từ JSON

Đầu vào: JSON

Đang tải trình soạn thảo…

C# đã Tạo

Configuration

Nhập dữ liệu JSON để tạo lớp và record C# có kiểu mạnh cho dự án .NET của bạn

Lớp, record, DTO và thuộc tính nullable reference types

Cách chuyển đổi JSON sang C# – hướng dẫn từng bước

Sử dụng trình tạo JSON sang C# này để tạo các lớp hoặc bản ghi C# từ các mẫu JSON cho API ASP.NET Core và ứng dụng .NET.

  1. Bước 1 – Dán mẫu JSON

    • Dán đối tượng hoặc mảng JSON đại diện vào trình soạn thảo bên trái.
    • Bao gồm các đối tượng lồng nhau, mảng và các trường có thể rỗng để các kiểu được suy ra chính xác.
    • Sử dụng Import để tải JSON từ tệp, URL hoặc dữ liệu mẫu.
  2. Bước 2 – Chọn tùy chọn lớp C#

    • Đặt Class NameNamespace để phù hợp với cấu trúc dự án của bạn.
    • Chọn khung JSON (System.Text.Json hoặc Newtonsoft.Json) nếu bạn muốn thuộc tính.
    • Bật các loại tham chiếu có thể rỗng để các trường tùy chọn ánh xạ tới string? và các loại tương tự.
  3. Bước 3 – Xem lại mã được tạo

    • Kiểm tra tên trường, loại và cách mô hình hóa mảng/đối tượng.
    • Điều chỉnh các tùy chọn như Root Type Name, xử lý null và khung nếu có.
    • Nếu một trường được suy ra không chính xác, hãy điều chỉnh JSON mẫu của bạn và tạo lại.
  4. Bước 4 - Sử dụng DTO được tạo trong .NET

    • Dán kết quả đầu ra vào dự án của bạn và thêm nó vào thư mục API/DTO của bạn.
    • Giải tuần tự hóa JSON thành loại gốc bằng cách sử dụng trình tuần tự hóa đã chọn của bạn.
    • Giữ DTO tách biệt khỏi các mô hình miền khi bạn cần lập phiên bản và khả năng tương thích ngược.
  5. Bước 5 – Sao chép hoặc tải xuống

    • Sao chép đầu ra vào dự án của bạn hoặc tải xuống dưới dạng tệp.
    • Chạy trình định dạng/linter để phù hợp với kiểu mã của bạn.
    • Thêm thư viện phân tích cú pháp/tuần tự hóa JSON nếu ngôn ngữ của bạn yêu cầu chúng.

Mẹo nhanh

  • Ưu tiên hồ sơ cho các mô hình bất biến khi có thể.
  • Sử dụng [JsonPropertyName]/[JsonProperty] khi các khóa JSON không khớp với cách đặt tên C#.
  • Xác thực đầu vào sớm để tránh các đối tượng được khởi tạo một phần.
Đầu ra ví dụ (đơn giản hóa)
// đầu vào 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; }
}

Các công cụ JSON & C# liên quan

Khám phá thêm các công cụ JSON và lược đồ hoạt động hiệu quả cùng với trình tạo JSON sang C# này.

Câu hỏi thường gặp

Những tính năng C# nào được hỗ trợ trong trình tạo JSON sang C# này?

Trình tạo tạo lớp C# và C# 9+ record với thuộc tính, hỗ trợ attribute JSON.NET và System.Text.Json, làm theo quy ước đặt tên .NET hiện đại với namespace phù hợp.

Tôi có thể tạo record và mô hình DTO C# thay vì chỉ lớp không?

Có! Chọn 'Record' làm framework để tạo record C# hiện đại với thuộc tính bất biến lý tưởng cho DTO, API contracts và value types.

JSON serialization hoạt động như thế nào với kiểu C# đã tạo?

Trình tạo hỗ trợ cả attribute Newtonsoft.Json và System.Text.Json cho serialization/deserialization JSON chính xác với tên thuộc tính tùy chỉnh, xử lý null và cấu hình linh hoạt.

Reference type nullable và trường JSON tùy chọn thì sao?

Trình tạo bao gồm annotation nullable (object?) cho các thuộc tính có thể null, làm theo quy ước reference type nullable C# hiện đại và giúp ánh xạ an toàn các trường JSON tùy chọn.

Tôi có thể sử dụng lớp C# đã tạo trong dự án ASP.NET Core hoặc Blazor không?

Có. Mã JSON sang C# hoạt động tốt trong controller ASP.NET Core, minimal APIs, component Blazor và bất kỳ ứng dụng .NET nào cần mô hình kiểu mạnh cho JSON payloads.

Trình tạo JSON sang C# này có miễn phí không?

Có. Trình tạo JSON sang C# của JSON Swiss miễn phí trong trình duyệt. Bạn có thể dán JSON, cấu hình tùy chọn và tạo mã C# mà không cần cài đặt thêm.

Trình tạo Lớp & Record C# từ JSON | JSONSwiss