In JsonMediaTypeFormatter, JsonContractResolver is set as DefaultContractResolver, Which calls ConfigureProperty Method, Which should set Default SerializerSettings from JsonMediaTypeFormatter,
because of which DefaultValueHandling, NullValueHandling, don't work at all.
private void ConfigureProperty(MemberInfo member, JsonProperty property)
{
if ((this._formatter.RequiredMemberSelector != null) && this._formatter.RequiredMemberSelector.IsRequiredMember(member))
{
property.Required = Required.AllowNull;
property.DefaultValueHandling = 0;
property.NullValueHandling = 0;
}
else
{
property.Required = Required.Default;
}
}
because of which DefaultValueHandling, NullValueHandling, don't work at all.
private void ConfigureProperty(MemberInfo member, JsonProperty property)
{
if ((this._formatter.RequiredMemberSelector != null) && this._formatter.RequiredMemberSelector.IsRequiredMember(member))
{
property.Required = Required.AllowNull;
property.DefaultValueHandling = 0;
property.NullValueHandling = 0;
}
else
{
property.Required = Required.Default;
}
}