在Nancy代码中,您有in DefaultBinder on line 181
private bool BindingValueIsValid(string bindingValue, object existingValue, BindingMemberInfo modelProperty, BindingContext bindingContext)
{
return (!String.IsNullOrEmpty(bindingValue) &&
(IsDefaultValue(existingValue, modelProperty.PropertyType) ||
bindingContext.Configuration.Overwrite));
}
当发送空字符串作为值时,确定我的属性被设置(或者根本没有设置)为null。对我来说,这不应该是默认行为,因为我想要区分空字符串和空值。至少我无法改变这一点,也没有选择。
有什么工作吗?为什么这似乎是Nancy,ASP.NET MVC和其他人的默认行为?