Я столкнулся с проблемой с Newtonsoft. Json - v10.0.0 (. Net Framework V4.6.2)
Пример кода
public class AnyClass
{
[JsonProperty(Required = Required.Always)]
public DateTime Timestamp { get; set; }
[JsonProperty(Required = Required.Always)]
public int AnyInt { get; set; }
[JsonProperty(Required = Required.Always)]
public DateTime? NullableTimestamp { get; set; }
}
[HttpPut]
[Route("")]
public async Task<IHttpActionResult> Handle(AnyClass anyInstance)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
}
Ожидаемое поведение
Исключение будет выдано для свойства AnyClass, которого нет в JSON, включая те, которые не могут быть нулевыми.
Фактическое поведение
Исключение возникает только для NullableTimestamp, поскольку оно может быть нулевым
Вопрос Что я сделал не так, или это просто ошибка?