Prakash Sekhar Ответов: 1

Сохранение в существующем файле JSON с помощью C#


Я должен сохранить данные в файле JSON. данные должны быть вставлены в существующую категорию. Я не могу записать данные в требуемую категорию, вместо этого они поступают как отдельные. Пожалуйста, найдите код ниже.
"CategoryName": [{
	"SubCategoryName": "Test2",
	"HostName": "111.222.225.15",
	"UserName": "AAAA",
	"Password": "AAAA",
	"IsActive": true
},
{
	"SubCategoryName": "test 1",
	"HostName": "11.11.11.11",
	"UserName": "3333",
	"Password": "33333",
	"IsActive": false
}]

Я хочу добавить третью подкатегорию, но не могу этого сделать?

Что я уже пробовал:

Я попытался прочитать данные из существующего JSON-файла и назначить их объекту, а затем снова попытался записать их в файл.
Я не могу записать новые данные в файл.

1 Ответов

Рейтинг:
2

Graeme_Grant

Конвертируйте в классы, добавьте дополнительные данные, затем конвертируйте обратно и сохраните JSON. Эта статья покажет вам, как: Работа с JSON в C# и VB[^]


Prakash Sekhar

Я прошел по ссылке, которую вы разместили, но я не могу заставить ее работать правильно.
1. Как преобразовать в классы, а затем добавить новые данные. Не могли бы вы объяснить подробнее?

Graeme_Grant

Что ты хочешь, чтобы я объяснил? Вы скачали код? В решении есть 6 различных проектов, которые используются в данной статье. Все проекты полностью работают.

В статье также объясняется, как преобразовать данные JSON в классы.

Prakash Sekhar

Я скачал 3 решения. Я не в состоянии правильно понять реализацию.

Graeme_Grant

Вы последовали первому примеру? JSON Utils[^] чтобы генерировать классы? Если у вас есть, я покажу вам, как загрузить JSON из файла и как преобразовать его в сгенерированные классы - 2 строки кода с помощью вспомогательного класса. Чего тут не понимать?

Prakash Sekhar

я сгенерировал классы с помощью утилит JSON. У меня есть файл класса. Что мне нужно делать дальше?

Graeme_Grant

Следуйте инструкциям в статье. Считайте json в строку и используйте JsonHelper класс... Все это есть в статье и приведенном примере кода. Посмотрите на пример категории Etsy (скриншот и код включены). Вы даже можете запустить образец кода, который вы скачали, и посмотреть, как он работает.

Prakash Sekhar

{ "CategoryInfo": [
{
"CategoryName": "AAA",
"Имя_подкатегории": [
{
"ConnectionName": "Test2"
},
{
"ConnectionName": "тест 1"
}
]
},
{
"CategoryName": "XYZ",
"Имя_подкатегории": [
{
"ConnectionName": "Test8"
},
{
"ConnectionName": "тест 2"
}
]
}
]
}

Это структура, которая у меня есть. Я пытаюсь добавить новое имя соединения в разделе SubCategoryName. В этой статье я не могу найти код для добавления новых данных к существующим.