Datos clave
- Categoría
- Desarrollo y Web
- Tipos de entrada
- textarea, text, checkbox
- Tipo de salida
- text
- Cobertura de muestras
- 4
- API disponible
- Yes
Resumen
Esta herramienta convierte estructuras de datos JSON en clases de C# fuertemente tipadas de forma instantánea. Genera automáticamente propiedades en formato PascalCase, incluye atributos JsonPropertyName para la serialización de System.Text.Json e infiere tipos de datos anidados y colecciones a partir de tu JSON de entrada.
Cuándo usarlo
- •Al integrar una API externa que devuelve respuestas JSON y necesitas definir rápidamente los modelos de datos (DTO) en tu proyecto .NET.
- •Cuando quieres evitar la escritura manual de clases C# repetitivas a partir de payloads JSON complejos o con múltiples niveles de anidamiento.
- •Al configurar la deserialización en C# y requerir mapeos precisos mediante atributos JsonPropertyName y tipos anulables.
Cómo funciona
- •Pega el fragmento de código JSON en el campo de entrada de texto.
- •Define el nombre de la clase raíz y selecciona si deseas que las propiedades se generen como anulables.
- •La herramienta procesa el JSON, infiere los tipos de datos (cadenas, números, booleanos, arreglos y objetos) y genera el código C# correspondiente listo para copiar.
Casos de uso
Ejemplos
1. Modelado de respuesta de API de usuarios
Desarrollador Backend- Contexto
- Está integrando un servicio de autenticación de terceros que devuelve un JSON con datos del perfil del usuario, incluyendo dirección y roles.
- Problema
- Crear manualmente las clases C# para mapear la respuesta JSON consume tiempo y puede generar errores de tipado.
- Cómo usarlo
- Pega el JSON de respuesta en el cuadro de texto, asigna 'UserProfile' como nombre de la clase raíz y activa la opción de propiedades anulables.
- Configuración de ejemplo
-
jsonInput: { "id": 101, "username": "johndoe", "roles": ["editor"], "profile": { "firstName": "John", "lastName": "Doe" } }, rootName: UserProfile, optionalFields: true - Resultado
- Se generan las clases C# 'UserProfile' y 'Profile' con propiedades PascalCase, anotadas con [JsonPropertyName("...")] y tipos anulables como string?.
2. Conversión de configuración de aplicación
Ingeniero de Software- Contexto
- Necesita leer un archivo de configuración local appsettings.json en una clase de C# para usar el patrón de opciones de .NET.
- Problema
- Escribir la estructura de clases para una configuración con múltiples niveles de anidamiento.
- Cómo usarlo
- Introduce el JSON de configuración, establece el nombre raíz como 'AppConfig' y genera el código sin propiedades anulables.
- Configuración de ejemplo
-
jsonInput: { "version": "1.0", "logging": { "level": "Debug", "saveToFile": true } }, rootName: AppConfig, optionalFields: false - Resultado
- Obtiene las clases 'AppConfig' y 'Logging' estructuradas con tipos estrictos listos para enlazar con Configuration.Get<AppConfig>().
Probar con muestras
jsonHubs relacionados
Preguntas frecuentes
¿Qué biblioteca de serialización utiliza para los atributos?
Utiliza los atributos JsonPropertyName pertenecientes al espacio de nombres System.Text.Json de .NET.
¿Cómo maneja los objetos anidados en el JSON?
Crea clases secundarias independientes para cada objeto anidado y las referencia como propiedades dentro de la clase principal.
¿Qué hace la opción de propiedades anulables?
Agrega el operador ? a los tipos de C# (por ejemplo, string? o int?) para permitir valores nulos en la deserialización.
¿Soporta arreglos y listas en el JSON?
Sí, detecta arreglos de elementos y los convierte en propiedades de tipo List<T> o arreglos equivalentes en C#.
¿Es necesario registrarse para usar el convertidor?
No, la conversión se realiza de forma directa y gratuita en el navegador.