Проект веб-API создается в ASP. NET Core 2.2.
У меня есть метод POST
, который принимает настраиваемый класс в качестве параметра:
public async Task<IActionResult> MyWebMethod(Id id,
[FromBody] IReadOnlyCollection<MyCustomClass> instances)
{
// Process the data
return CreatedAtRoute("GetMyCollection",
new
{
id,
myIds = "someString";
},
responsesObject);
}
Код работает нормально, когда он получает правильный экземпляр.
Если метод получает какой-либо нулевой параметр или пустой объект из клиентского запроса, мне нужно отправить ответ 422 клиенту (422 Unprocessable Entity) .
Я поместил в метод код для обработки такого сценария ios:
if (instances == null || instances.Count == 0)
{
return StatusCode(Convert.ToInt32(HttpStatusCode.UnprocessableEntity), instances);
}
Но проблема в следующем: всякий раз, когда в метод веб-API передается нулевой или пустой объект , метод не срабатывает (когда я пытаюсь отладить метод).
Как лучше всего обработать такой запрос и отправить ответ 422 обратно клиенту?