试图发送多个参数到ASP.webAPI post方法导致服务器错误500



我试图在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])

相关内容

最新更新