Как преобразовать JSON в класс С#

Kak Preobrazovat Json V Klass S



JSON или Обозначение объектов JavaScript основан на подмножестве языка программирования JavaScript, но не зависит от языка и может использоваться с любым языком программирования, имеющим анализатор JSON. Использовать JSON данные в программировании на C#, необходимо преобразовать JSON к С# класс . Это позволяет программистам взаимодействовать с данными безопасным для типов способом, что снижает риск ошибок и упрощает поддержку кода.

Работать с JSON данные в C# часто требуют преобразования JSON-данные в Классы С# которые можно легко редактировать и использовать в приложении. В этом уроке мы рассмотрим процесс преобразования JSON данные в классы C# с примерами кода, которые помогут вам на этом пути.







Как преобразовать JSON в класс C#

Шаги по преобразованию JSON к Класс С# являются:



Шаг 1. Анализ данных JSON



Первый шаг к конвертации JSON к С# класс заключается в анализе данных JSON и определении их структуры. Это включает в себя идентификацию ключей или свойств данных и соответствующих им типов данных. Как только эта информация будет собрана, мы можем приступить к созданию соответствующего класса C#, который будет представлять данные JSON.





Шаг 2. Создайте класс C#, представляющий данные JSON.

JSON затем имя данных используется для определения класса. Внутри этого класса мы определяем свойства, соответствующие ключам в JSON данные. Мы устанавливаем типы данных свойств в соответствии с типами данных значений в JSON данные. Например, если ключ в JSON data имеет значение строки, мы определяем соответствующее свойство в классе C# как строку.



Шаг 3. Десериализуйте данные JSON.

После создания класса C# следующим шагом будет десериализация JSON данные в экземпляр класса. Это возможно с помощью Newtonsoft.Json библиотека, которая предоставляет простой API для десериализации JSON данные. Вам необходимо установить и импортировать Newtonsoft.Json package, чтобы использовать его в своем коде. Создайте экземпляр JsonSerializer класс и позвоните в Десериализовать метод, сдача JSON данные в виде строки и класс C# в качестве параметра универсального типа:

с помощью Newtonsoft.Json;

// JSON-данные
строка json = '{' имя ':' Джон Смит ',' возраст ':30}' ;
// С # сорт
открытый класс Person
{
общедоступная строка Имя { получать; набор ; }
общественный возраст { получать; набор ; }
}
// Десериализовать данные JSON в объект Person
Человек-человек = JsonConvert.DeserializeObject < Человек > ( json ) ;

JSON data в этом примере — это простой объект со свойством name и age, а класс C# — это класс Person с аналогичными свойствами. JsonConvert. ДесериализоватьОбъект используется для преобразования JSON данные в объект Person, который можно редактировать и использовать в приложении.

Шаг 4. Управление объектом C#

После десериализации JSON-данные в объект С# , им можно манипулировать и использовать в приложении по желанию. Свойства могут быть прочитаны или установлены, методы могут быть вызваны, а объект может быть предоставлен в качестве параметра другим процедурам или функциям.

Вот пример работы с Человек объект, который вы создали на предыдущем шаге:

// Получить человека имя
имя строки = человек.Имя;

// Установить человека'
мудрец
человек.Возраст = 31 ;

// Вызов метода для объекта человека
человек.PrintDetails ( ) ;

В этом примере объект person используется для получения имени человека, установки возраста человека и вызова РаспечататьДетали метод на объекте.

Вот полный код, демонстрирующий, как конвертировать JSON в класс C# .

с помощью системы;
с помощью Newtonsoft.Json;

пространство имен JsonToClassExample
{
программа класса
{
статическая пустота Главная ( нить [ ] аргументы )
{
строка json = @ '{
'firstName': 'Ларри',
'lastName': 'Кевин',
'адрес': {
'улица': 'Главная улица',
'город': 'Венеция',
}
}'
;

Корневой объект myObject = JsonConvert.DeserializeObject < Корневой объект > ( json ) ;

Console.WriteLine ( «Первое имя:» + myObject.firstName ) ;
Console.WriteLine ( «Фамилия:» + мойОбъект.фамилия ) ;
Console.WriteLine ( «Улица:» + мойОбъект.адрес.улица ) ;
Console.WriteLine ( «Город это:» + мойОбъект.адрес.город ) ;


Консоль.ReadLine ( ) ;
}
}

общедоступный класс Rootobject
{
общедоступная строка firstName { получать; набор ; }
общедоступная строка фамилия { получать; набор ; }
публичный адрес { получать; набор ; }
}

Адрес публичного класса
{
общественная струнная улица { получать; набор ; }
общественный строковый город { получать; набор ; }
}
}

Приведенный выше код демонстрирует, как использовать NuGet-пакет Newtonsoft.Json к десериализовать а Строка JSON в класс C# . Строка JSON содержит информацию об имени и фамилии человека, а также его адрес (улица и город). Как классы C#, классы Rootobject и Address устанавливают структуру данных JSON.

JsonConvert. ДесериализоватьОбъект метод используется для преобразования строки JSON в Корневой объект пример. Затем данные отображаются на консоли путем доступа к атрибутам Корневой объект и классы адресов. Консоль.ReadLine метод используется для остановки программы до ее завершения.

Выход

Другие способы преобразования JSON в C#

Вы также можете скопировать JSON данные в буфер обмена и используйте Генератор классов JSON в C# для создания класса C#. В Интернете есть несколько инструментов, таких как Json2CSharp и Быстрый тип , который может помочь вам сгенерировать класс C# из JSON данные. Вставьте JSON данные в соответствующее поле и позвольте инструменту сгенерировать для вас класс C#. Этот подход прост и быстр. Однако для целей обучения вы должны следовать первому методу.

Заключение

Преобразование данных JSON в класс C# предполагает анализ JSON data, создание соответствующего класса C# и десериализация данных JSON в объект класса C#. Этот процесс может быть полезен при работе с JSON данных в приложениях C#, упрощая чтение, обработку и отправку данных в веб-службы или API. Чтобы быстро перевести JSON в С# , вы также можете использовать несколько веб-инструментов, таких как Json2CSharp и Быстрый тип .