Angular JS - 将数据发送到.NET Controller API

时间:2014-06-09 17:10:02

标签: asp.net angularjs api

我在这里有这个角度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]报告报告而不是数据数据

1 个答案:

答案 0 :(得分:1)

尽可能简单,您缺少参数名称:

$http.post('/reports/', {data: $scope.user});

确保$scope.user是一个数组,否则更改类型。