考虑到我过去使用 MVC2+3 进行了一些绑定,我无法弄清楚这一点,我感到非常沮丧,我有一个这样的方法:
[System.Web.Http.HttpPost]
public ResponseModel Handler([FromBody]RequestModel tableRequest)
{
return CreateTableResponse(tableRequest);
}
这很好,只是我不知道它是如何绑定到这个模型的——因为我不确定它的绑定方式我不知道如何通过为发送的值指定不同的名称来应用自定义绑定(使用 JSON 'application/ json'):
public class RequestModel
{
[JsonProperty(PropertyName = "sName")]
public String Name {get;set;}
public List<AEntity> RequestEntities {get;set;}
}
我知道RequestEntities
在绑定方面需要做一些工作,但为什么不在JSON 中RequestModel.Name
绑定呢?sName
这RequestModel.RequestEntities
真的很尴尬,因为正在发送的 JSON 格式为:RequestModel.RequestEntities[0].ID
对应于iID_0
Great huh?我无法更改 JSON 的发送方式。
{
"RequestModel" :
{
"sName" : "john",
"iID_0" : 1,
"iID_1" : 2,
"iID_2" : 3
}
}
是否可以指定 MediaTypeFormatter 或获取 JSON 作为参数?我如何绑定到该模型?
所有这些幕后的魔法都无济于事。