Я пытаюсь сделать свою собственную проверку в сервисе dotnectcore, и когда я получаю модель из тела запроса в моем методе Controller, я пытаюсь проверить его в методе GetModelStateErrorFields. Там я надеюсь перебрать ключи состояния модели, чтобы найти недопустимые, но каждый раз, когда я передаю в метод полностью заполненную модель с парой недопустимых полей, в свойстве Keys в GetModelStateErrorFields у меня всегда есть один ключ (первый недопустимый) свойство моей модели) а не все. Я делаю что-то неправильно?
public JsonResult AddNewAuction([FromBody] Auction auction)
{
if (auction == null)
{
var errorFields = GetModelStateErrorFields<Auction>();
var error = new DeserializationException(errorFields);
return error.ToJson();
}
return new JsonResult(null);
}
protected string GetModelStateErrorFields<T>()
{
if (ModelState.IsValid)
{
return string.Empty;
}
var keys = ModelState.Keys.Where(k => ModelState[k].ValidationState == ModelValidationState.Invalid);
...
}