尝试将多个参数发送到ASP.NET webAPI post方法结果服务器错误500

时间:2016-08-06 23:22:48

标签: ajax asp.net-web-api http-post

Iam尝试将具有复杂数据类型的多个参数发送到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
         }

1 个答案:

答案 0 :(得分:0)

我会将API参数更改为InfoDto数组并从正文中检索它:

public IHttpActionResult PostInfo([FromBody]InfoDto[] xDtos)
{

}

您还必须将JavaScript更改为以下内容:

data: JSON.stringify([x, y])