我创建了一个http服务,它使用WCF和webHttpBindings通过HTTP访问数据。一切都按预期工作,但现在我得到了一个问题,当传递一个未用于处理请求的参数时会出错。就像参数的大小写错误,或者拼写错误一样,它不会映射到正确的变量。
例如,如果我有这样的数据模型:
[DataContract]
public class Contact{
[DataMember(Name="name")]
public string Name {get; set;}
[DataMember(Name="age")]
public int Age {get; set;}
}
如果我有一个使用此联系人的方法,用户可以将其传递到请求正文中,如下所示:
{"name":"InsertName","age":23}
但是,如果请求中的属性名称与模型中的DataMembers不完全匹配,则它们的值会丢失。
{"Nam":"InsertName","age":23}
有没有办法找出一个Nam
参数被添加到HTTP请求主体但是它没有映射到我的WCF方法的参数?