Подробно отвечая на мой собственный вопрос, как я решил проблему.
В коде C# не было проблем, только метод размещения данных в Почтальоне был неправильным.
См. Это ответьте, если 415 Неподдерживаемый тип носителя Ошибка почтальона. Код C# такой же, как в вопросе выше.
Я использую два способа размещения данных. Во-первых, публикация в виде данных формы, во-вторых, публикация в формате JSON.
1] При публикации массива пользовательского класса с использованием данных формы используйте метод Xueli Chen. Выберите Body
-> form-data
в Postman и введите массив. элементы типа items[index].key = value
, такие как items[0].id = 1001
и items[0].ItemName = "Biscuits"
2] При публикации массива пользовательского класса в формате JSON сначала выберите Body
-> raw
-> Выбрать JSON
на языках. Если при выборе JSON есть предупреждающий знак, например
, то Go К Headers
-> Установите Content-Type = application/json
точно так же, как
Сейчас Body
-> raw
JSON Массив данных
[
{
"Id": 1,
"ItemName": "Biscuits",
"Price": 20
},
{
"Id": 1,
"ItemName": "Cakes",
"Price": 100
}
]
и C# код в проекте изменения [FromForm]
для [FromBody]
атрибута
public ActionResult<InventoryItem> AddInventoryItems([FromBody]InventoryItem[] items)
и отправки на сервер
Короче говоря для Posting Array как form-data
используйте items[index].key = value
как items[0].ItemName = Biscuits
в Почтальоне.
Для размещения массива как JSON Данные Введите JSON массив и проверьте, если Content-Type = application/json
в Headers
в Почтальоне.
Извините за длинный ответ.