В качестве улучшения создайте свой собственный код состояния StatusCode , попробуйте сделать следующее
if (PostModel.category == 0)
{
result = new {
ErrorMessage = "Category can't be 0",
ValidModel = false,
};
return StatusCode(654,result);
}
Затем этот ответ должен быть отклонен как ошибка машинописным шрифтом.
Несмотря на то, что этот подход применим, он не является общепринятым в валидации и не соответствует стандарту W3 .Лучше вернуть BadRequest с кодом состояния 400, а в тело результата добавить свой внутренний код, как показано ниже
if (PostModel.category == 0)
{
result = new {
ErrorMessage = "Category can't be 0",
ValidModel = false,
Code = 654
};
return BadRequest(result);
}