JSON в C# Class

Преобразует данные JSON в классы C# со свойствами PascalCase, атрибутами JsonPropertyName и выводом вложенных типов

Ключевые факты

Категория
Разработка и Web
Типы входных данных
textarea, text, checkbox
Тип результата
text
Покрытие примерами
4
API доступен
Yes

Обзор

Онлайн-конвертер JSON в C# Class позволяет мгновенно преобразовывать структуры данных JSON в строго типизированные классы C#. Инструмент автоматически генерирует свойства в стиле PascalCase, добавляет атрибуты JsonPropertyName для корректной десериализации в .NET и поддерживает вложенные объекты, а также опциональные nullable-типы.

Когда использовать

  • При интеграции внешних REST API, возвращающих ответы в формате JSON, для создания моделей данных в проектах на .NET.
  • При написании модульных тестов, когда необходимо быстро сгенерировать C# классы на основе тестовых JSON-фишек.
  • При миграции конфигурационных файлов или DTO из JavaScript/TypeScript стека в C# бэкенд.

Как это работает

  • Вставьте исходный текст JSON в поле ввода.
  • Укажите имя корневого класса и выберите, нужно ли делать свойства nullable (допускающими null).
  • Нажмите кнопку конвертации для автоматического разбора структуры, генерации вложенных классов и добавления атрибутов System.Text.Json.

Сценарии использования

Генерация DTO (Data Transfer Objects) для HttpClient при работе со сторонними веб-службами.
Создание строго типизированных моделей конфигурации для appsettings.json в ASP.NET Core.
Быстрое прототипирование структур данных на основе сырых логов или ответов базы данных в формате JSON.

Примеры

1. Генерация модели профиля пользователя

Backend-разработчик
Контекст
Разработчик интегрирует API авторизации, которое возвращает данные пользователя с вложенным адресом.
Проблема
Необходимо быстро создать C# классы с поддержкой System.Text.Json без ручного написания кода.
Как использовать
Вставьте JSON профиля в поле ввода, укажите имя корневого класса "UserProfile" и нажмите кнопку генерации.
Пример конфигурации
Имя корневого типа: UserProfile, Свойства, допускающие null: false
Результат
Сгенерирован класс UserProfile с PascalCase свойствами и вложенным классом Address, содержащим атрибуты JsonPropertyName.

2. Создание nullable DTO для каталога товаров

.NET Developer
Контекст
API каталога товаров может возвращать пустые (null) значения для некоторых полей, таких как скидки или описание.
Проблема
Требуется сгенерировать классы C#, где типы данных поддерживают null (например, int? или string?).
Как использовать
Вставьте JSON товара, введите имя класса "ProductDto" и включите опцию "Свойства, допускающие null".
Пример конфигурации
Имя корневого типа: ProductDto, Свойства, допускающие null: true
Результат
Получен код C# классов, где числовые и объектные свойства объявлены как nullable (например, double? или ProductDetail?).

Проверить на примерах

json

Связанные хабы

FAQ

Поддерживает ли конвертер вложенные объекты?

Да, инструмент автоматически извлекает вложенные структуры JSON и генерирует для них отдельные связанные классы C#.

Какие атрибуты сериализации используются в сгенерированном коде?

По умолчанию генерируются атрибуты [JsonPropertyName("...")] из пространства имен System.Text.Json.

Можно ли сделать свойства nullable?

Да, для этого активируйте опцию «Свойства, допускающие null» перед генерацией кода.

Как переименовать главный класс?

Введите желаемое название в поле «Имя корневого типа» (по умолчанию используется Root).

Преобразуются ли имена свойств в PascalCase?

Да, имена свойств автоматически приводятся к стандарту PascalCase, а исходные ключи сохраняются в атрибутах JsonPropertyName.

Документация API

Конечная точка запроса

POST /ru/api/tools/json-to-csharp

Параметры запроса

Имя параметра Тип Обязательно Описание
jsonInput textarea Да -
rootName text Нет -
optionalFields checkbox Нет -

Формат ответа

{
  "result": "Processed text content",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
Текст: Текст

Документация MCP

Добавьте этот инструмент к конфигурации сервера MCP:

{
  "mcpServers": {
    "elysiatools-json-to-csharp": {
      "name": "json-to-csharp",
      "description": "Преобразует данные JSON в классы C# со свойствами PascalCase, атрибутами JsonPropertyName и выводом вложенных типов",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=json-to-csharp",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Вы можете объединять несколько инструментов, например: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, максимум 20 инструментов.

Если вы столкнулись с проблемами, пожалуйста, свяжитесь с нами по адресу [email protected]