我在这里有这个角度js代码:
$http.post('/reports/', JSON.stringify($scope.user));
并点击我的Reports Controller Post方法:
[HttpPost]
public dynamic Post(Array data){
//do something
}
但是当我检查Post方法中的数据时,它在我的断点中命中时它显示为null :(如何将数据从$ scope.user传递给我的控制器。我做了一个$ scope的console.log。用户和数据在那里,它是一个对象,但试图将其作为JSON传递。
我发现了这个:
public HttpResponseMessage Post([FromBody]Customer cust)
{
var newCust = _Repository.InsertCustomer(cust);
if (newCust != null)
{
var msg = new HttpResponseMessage(HttpStatusCode.Created);
msg.Headers.Location = new Uri(Request.RequestUri + newCust.ID.ToString());
return msg;
}
throw new HttpResponseException(HttpStatusCode.Conflict);
}
我是否必须将[FromBody]报告报告而不是数据数据
答案 0 :(得分:1)
尽可能简单,您缺少参数名称:
$http.post('/reports/', {data: $scope.user});
确保$scope.user
是一个数组,否则更改类型。