Получить значения параметров JSON файла

237
27 декабря 2021, 23:10

Делаю веб-сервис, для его работы необходимо получить значения параметров, в данном случае - ("article", "id", "color", "size") . Для тестирования использую Postman с запросом POST и в тело цикла ввожу json-код

{"test": "test1"
  "plan": {
    "items": [
      {
        "item": {
          "items": [
            {
              "modificator": "article"
            },
            {
              "modificator": "id"
            },
            {
            "modificator": "color"
            },
            {
            "modificator": "size"
            }
          ]
        }
      }
    ]
  }
}

При этом в контроллере пишу такой код

public class Item3
        {
            public string modificator { get; set; }
        }
        public class Item2
        {
            public List<Item3> items { get; set; }
        }
        public class Item
        {
            public Item2 item { get; set; }
        }
        public class Plan
        {
            public List<Item> items { get; set; }
        }
        public class RootObject
        {
            public Plan plan { get; set; }
        }
        [Route("~/api/ApiProd")]
        [HttpPost]
        public string Show([FromBody] Item3 item3)
        {
            return item3.modificator;
        }

Когда отправляю запрос в Postman, то могу получить только значение "test1", подскажите, как правильно получить доступ ко всем параметрам

Answer 1
  1. У вас нет запятой после "test": "test1"
  2. Вы не добавили тест в корневой объект:
public class Rootobject
{
    public string test { get; set; }
    public Plan plan { get; set; }
}
  1. Show должен принимать не Item3, а RootObject, в котором вы потом будете обращаться к нужным вам данным:
 [Route("~/api/ApiProd")]
 [HttpPost]
 public string Show([FromBody] RootObject model)
 {
      return model.plan.items[0].item.items[0].modificator;
 }
READ ALSO
Передать функции значение из группы регулярки на C#

Передать функции значение из группы регулярки на C#

Помогите решить мою задачку, есть код:

76
Бот спамит ; Бот не может писать в беседу. VkNet, C#

Бот спамит ; Бот не может писать в беседу. VkNet, C#

У меня возникло несколько вопросов по созданию ВК бота на C# с помощью библиотеки VkNet

111
Unity | AudioSource.mute не работает

Unity | AudioSource.mute не работает

У меня есть функция (прикручена к нажатию кнопки), которая должна включать/отключать весь звук на сцене (ну и сохранять наличие/отсутствие...

308
Назначил кнопке обработчик событий, но ничего не происходит. WPF

Назначил кнопке обработчик событий, но ничего не происходит. WPF

Хочу сделать свою программу многостраничнойДля этого я назначил кнопке событие по переключению страниц

96