免费在线 JSON 到 C# 类生成器
粘贴 JSON 并获取带有推断类型、嵌套类和数组的 List<T> 的 C# 类定义。选择 POCO 类或 C# 9+ 记录、PascalCase 属性名称以及 Newtonsoft.Json 或 System.Text.Json 序列化属性。
设置根类名称和可选命名空间,然后将生成的代码复制到您的 .NET 项目中。所有转换都在您的浏览器中运行 - 不会上传任何内容。
常见问题
POCO 和 record 有什么区别?
POCO(Plain Old CLR Object)类是带 get/set 属性的可变引用类型——传统的 C# 做法。Record(C# 9+)默认不可变,并基于值进行相等比较。DTO 和 API 模型用 record;需要可变对象时用 POCO。
支持哪些 JSON 库特性?
Dokall 支持 Newtonsoft.Json(JsonProperty 特性)和 System.Text.Json(JsonPropertyName 特性)。请根据项目的 JSON 序列化器选择。System.Text.Json 是 .NET Core 3+ 中的现代默认选项。
C# 属性名是如何生成的?
属性名默认使用 PascalCase,遵循 C# 约定。JSON 的 camelCase 键会被转换:firstName 变为 FirstName。生成前可设置命名空间和根类名。
数组和嵌套对象如何处理?
JSON 数组变为 List<T>,元素类型由推断得出。嵌套对象变为独立的嵌套类。深层嵌套会在根类内生成嵌套类定义。
可以用于 Entity Framework 模型吗?
生成的类可用作 DTO 和 API 模型。Entity Framework 实体通常还需要额外特性(Key、Required、导航属性),这些无法从 JSON 推断。可将输出作为起点,再手动添加 EF 专用注解。