Почему у меня вместо сообщений об ошибках для связанной модели NULL, если я отправляю неправильный json? - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть следующая модель:

public class SaveTemplateRequest
{
    [JsonProperty("templateType")]
    [Required(ErrorMessage = "TemplateType can not be empty")]
    public string TemplateType { get; set; }

    [JsonProperty("langs")]
    [Required(ErrorMessage = "Lang's can not be empty")]
    public List<PushContentRequest> PushLangsRequest { get; set; }

    [JsonProperty("appIds")]
    [Required(ErrorMessage = "AppIds can not be empty")]
    public List<string> AppIds { get; set; }

    [JsonProperty("advertisers")]
    [Required(ErrorMessage = "AdvertiserNames can not be empty")]
    [BindProperty(Name = "Name")]
    public List<string> Advertisers { get; set; }

    [JsonProperty("isActive")]
    [Required(ErrorMessage = "IsActive field is required")]
    public bool  IsActive { get; set; }

    [JsonProperty("category")]
    [Required(ErrorMessage = "Category can not be empty")]
    [BindProperty(Name = "Name")]
    public string Category { get; set; }

    [JsonProperty("timeAgo")]
    [Required(ErrorMessage = "TimeAgo can not be null")]
    public int TimeAgo { get; set; }

    [JsonProperty("pushTemplate")]
    public int PushTemplateId { get; set; }


}

Я собираюсь отобразить его на HTTP-запрос с телом JSON. Вот подпись контроллера:

public async Task<IActionResult> SaveTemplate([FromBody] SaveTemplateRequest request)
        { ... }

Но если мой запрос содержит неправильный JSON, у меня нет сообщений от [Required(ErrorMessage = "<here is a message>")] У меня просто NULL в переменной request в контроллере. Почему это происходит? Как отправить сообщения об ошибке на клиенте?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...