Trình tạo JSON Schema từ C# Class

Đầu vào: C# code

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

Đầu ra: JSON Schema

Cài đặt

Chọn class hoặc record nào sẽ được xem là root khi tạo schema.

Việc parse chạy hoàn toàn trong trình duyệt. Source của bạn không rời khỏi trang.

Dán C# DTOs để tạo JSON Schema ngay lập tức.

Hỗ trợ classes, structs, records, annotations, nullable reference types và generic collections.

Cách chuyển C# classes và records sang JSON Schema – hướng dẫn từng bước

Công cụ C# class → JSON Schema trực tuyến này giúp bạn tạo JSON Schema từ các model thực (DTOs, structs và classes) để bạn có thể validate payloads, chia sẻ contracts và tạo mock JSON.

  1. Bước 1 – Dán source C#

    • Dán các model bạn muốn tài liệu hóa vào trình soạn thảo bên trái.
    • Bao gồm các type được tham chiếu trong cùng một snippet để schema có thể tạo definitions.
    • Dùng nút Mẫu để tải ví dụ và xem định dạng đầu vào mong đợi.
  2. Bước 2 – Chọn Root class (nếu cần)

    • Nếu phát hiện nhiều định nghĩa, hãy chọn root khớp với API payload của bạn.
    • Schema đầu ra được xây quanh root đã chọn và có thể bao gồm thêm definitions cho các type được tham chiếu.
  3. Bước 3 – Kiểm tra JSON Schema đầu ra

    • Kiểm tra types, trường bắt buộc vs tùy chọn và cấu trúc object/array lồng nhau.
    • Hãy chú ý definitions $ref khi model của bạn tham chiếu đến model khác.
    • Sao chép hoặc tải schema xuống để dùng cho validation, tài liệu hoặc schema-first development.
  4. Bước 4 – Validate hoặc tạo mock JSON

    • Nhấp Tạo mock data để mở mock generator với schema đã được nạp sẵn.
    • Validate payloads thực theo schema để phát hiện breaking changes sớm.
    • Nếu bạn dùng schema composition nâng cao (ví dụ anyOf/oneOf/allOf), hãy kiểm tra kết quả bằng validator đầy đủ như Ajv.

Lưu ý về hỗ trợ keyword schema

Schema tạo ra có thể bao gồm $ref và có thể chỉnh sửa để thêm anyOf, oneOf, hoặc allOf. Với schema phức tạp, hãy dùng JSON Schema validator đầy đủ và dereference trước khi tạo mock nếu cần.

Công cụ JSON Schema & code generation liên quan

Dùng các công cụ này để validate schema, tạo mock payloads, định dạng JSON examples và giữ code/contract đồng bộ.

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

Hỗ trợ cấu trúc C# nào?

Parser hiểu classes, structs, records (primary constructors), auto-properties, backing fields, enums và các attribute như JsonPropertyName, JsonProperty, DataMember(Name=...). Nó tôn trọng nullable reference types, trường tùy chọn, collections và dictionaries trong schema tạo ra.

Kiểu dữ liệu được ánh xạ sang JSON Schema như thế nào?

string, bool, int/double/decimal, DateTime/DateOnly/Guid map sang schema type/format gần nhất. Arrays, List<T>, IEnumerable<T>, Dictionary<TKey, TValue>, Nullable<T> và T? được chuyển thành cấu trúc array/object/optional. Symbol không nhận diện sẽ fallback về reference nếu khớp với class/enum khác.

Có hoạt động với các phiên bản C# và serializer khác nhau không?

Có. Các tính năng như records, init-only setters, nullable reference types, System.Text.Json annotations và Newtonsoft.Json attributes được hỗ trợ. Công cụ chạy hoàn toàn trong trình duyệt, nên bạn có thể dán DTOs riêng tư một cách an toàn.

Làm sao để tạo mock JSON?

Sau khi tạo schema, nhấp "Generate Mock Data" để mở Mock Generator với schema đã nạp sẵn. Cấu hình locale, số lượng array và trường tùy chọn để tạo payload thực tế cho docs hoặc tests.

Trình tạo JSON Schema từ C# Class | JSONSwiss