jsonecho

XML sang C#

Dán tài liệu XML để tạo các kiểu C# phù hợp với cấu trúc.

Đang tải công cụ...

Cách dùng XML sang C#

  1. Dán một ví dụ XML đại diện cho dữ liệu của bạn, tốt nhất là đã điền cả các trường không bắt buộc.
  2. Đặt tên kiểu gốc và chọn tạo thêm mã hỗ trợ hay chỉ tạo các kiểu dữ liệu.
  3. Sao chép mã C# đã tạo vào dự án.

Về XML sang C#

Viết thủ công các lớp mô hình cho lượng dữ liệu XML lớn khá nhàm chán và rất dễ gõ sai. Dán ví dụ vào đây, công cụ sẽ xác định cấu trúc: có những trường nào, trường nào là đối tượng hay mảng và mỗi giá trị có kiểu gì. Kết quả là các lớp có thuộc tính. Bỏ chọn "Chỉ kiểu dữ liệu" để thêm các thuộc tính Newtonsoft.Json và lớp Converter.

XML đầu tiên được chuyển đổi thành JSON theo cùng một cách như trong công cụ XML để JSON của chúng tôi: thuộc tính nhận được một @_ Prefix và nội dung văn bản bên cạnh thuộc tính được gọi là #text. Các kiểu C# được tạo từ kết quả đó. Tên thuộc tính được đổi sang PascalCase và thêm thuộc tính JsonProperty để giữ lại khóa gốc.

Sử dụng mã đã tạo

Với những người giúp đỡ, gọi Root.FromJson(json). Chỉ sử dụng các loại JsonSerializer.Deserialize<Root>(json) từ System.Text.Json và thêm thuộc tính nếu tên khác nhau.

Sử dụng các thành viên bị hủy bỏ long?, double? vv, cộng với các loại tham chiếu không có giá trị nếu thích hợp.

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

Mã C# được tạo cần những thư viện hay thành phần nào?

Kết quả là các lớp có thuộc tính. Bỏ chọn "Chỉ kiểu dữ liệu" để thêm các thuộc tính Newtonsoft.Json và lớp Converter.

Làm thế nào để phân tích XML với kết quả?

Chuyển đổi XML thành JSON đầu tiên (công cụ XML để JSON của chúng tôi làm điều này theo cùng một cách), sau đó với các trợ lý, gọi Root.FromJson(json). Chỉ sử dụng các loại JsonSerializer.Deserialize<Root>(json) từ System.Text.Json và thêm thuộc tính nếu tên khác nhau.

Trường không bắt buộc và trường bị thiếu được xử lý thế nào?

Sử dụng các thành viên bị hủy bỏ long?, double? vv, cộng với các loại tham chiếu không có giá trị nếu thích hợp.

Công cụ có xem nhiều hơn một bản ghi không?

Công cụ chỉ biết những gì có trong ví dụ của bạn. Trường không có trong ví dụ sẽ không xuất hiện trong các kiểu được tạo. Nếu một giá trị là null, công cụ không xác định được kiểu của nó. Dán ví dụ có càng nhiều trường được điền càng tốt, hoặc dán một mảng gồm nhiều bản ghi khác nhau.

Dữ liệu XML của tôi có được gửi lên máy chủ không?

Không. Ở lần dùng đầu tiên, công cụ được tải vào trình duyệt, khoảng 1 MB. Sau đó mọi thứ chạy ngay trên thiết bị.

Thêm công cụ trong Từ dữ liệu sang lớp

Tất cả công cụ →