Описание для опции excludeNulls
:
независимо от того, записать членов объекта со значением null
(выделено мной)
Это говорит о том, что оно влияет только на сериализацию операций, а не десериализацию операций.
Когда сериализуя объект с excludeNulls
, установленным на true
, Jil не будет записывать свойства в JSON, если они имеют значения null
.В вашем примере вы десериализуете в объект PaymentTypeBORequest
, который сам не поддерживает значения null
для свойства pkId
, так как он не может иметь значение null.
В порядкеЧтобы решить вашу конкретную проблему, вы можете просто установить для pkId
значение nullable int
, например:
public class PaymentTypeBORequest
{
public int? pkId { get; set; }
...
}
Если вы также хотите разрешить null
для ненулевых значений isSystem
и isActive
свойств, вы можете выполнять те же операции над этими полями.