我试图在WebAPI中发送具有复杂数据类型的多个参数到POST方法,但它失败了500服务器错误。如果有人能帮我找到丢失的东西,我会很感激的。
Ajax:var x={}
var y={}
$.ajax({
cache: false,
type: "POST",
data: JSON.stringify({xDto:x,yDto:y}),
url: "/api/Info/PostInfo",
dataType: 'json',
contentType: "application/json;charset=utf-8",
success: function(data) {
}
error: function(data) {
alert(JSON.stringify(data));
}
})
行动:
public IHttpActionResult PostInfo(InfoDto xDto,InfoDto yDto)
{
//post xDto and yDto to db
}
我会将API参数更改为InfoDto
数组并从body中检索它:
public IHttpActionResult PostInfo([FromBody]InfoDto[] xDtos)
{
}
你还必须把你的JavaScript改成这样:
data: JSON.stringify([x, y])