Невозможно опубликовать список объектов в веб-интерфейсе - PullRequest
0 голосов
/ 29 февраля 2020

Что я здесь не так делаю (я использую. net core 3.1):

Объект:

   public class Member
    {
        public int NUM {get;set;}
    }

Post Action

     [HttpPost]
     public async Task<IActionResult> Post([FromBody] IEnumerable<Member> members)

JSON

{
    [
        {"NUM": 5},
        {"NUM": 4}
    ]
}

Ошибка, которую я получаю от почтальона

{
    "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
    "title": "One or more validation errors occurred.",
    "status": 400,
    "traceId": "|fc86d5d0-498dec466e59f3c5.",
    "errors": {
        "$": [
            "The JSON value could not be converted to System.Collections.Generic.IEnumerable`1[TRS.Gemini.MemberApi.Controllers.Member]. Path: $ | LineNumber: 0 | BytePositionInLine: 1."
        ]
    }
}

Я пытался опубликовать один объект, а не коллекцию, и это работало нормально. Объект в конце, конечно, будет намного сложнее, но я хотел начать с простого.

1 Ответ

1 голос
/ 29 февраля 2020

Для объекта, который вы определили, допустимый ввод JSON будет:

[
    {"NUM": 5},
    {"NUM": 4}
]

Обратите внимание на отсутствие {} скобок.

Указанная вами полезная нагрузка также недействительно JSON.

...