我知道周围有类似的问题,但我找不到解决方案,所以我在这里。这是我的AngularJS员工:
$scope.someData = {
Name: "Bob",
PhoneNo: 123
};
var data = {
SomeData: $scope.somedata
};
var response = $http({
url: "/api/BlaBla/BlaBlaMethod",
method: "POST",
data: data,
});
return response;
下面是 C# 控制器:
[HttpPost]
public string BlaBlaMethod(MyModel myModel)
{
// do something
}
和模型:
public class MyModel
{
public SomeData SomeData { get; set; }
}
public class SomeData
{
public string Name { get; set; }
public int? PhoneNo { get; set; }
}
我试着用public string BlaBlaMethod([FromBody]MyModel myModel)
, public List<SomeData> SomeData { get; set; }
, dataType: 'json', data: JSON.stringify(data)
以及使用Angularjs $http服务的其他一些尝试,但myModel.Data不会填充。请帮我解决这个问题。提前谢谢你。
尝试使用Angular JS中定义的模型对象,并在API控制器中接收它。
$scope.SomeData= {
'Name': value,
'PhoneNo': value
}
$http.post('/api/BlaBla/BlaBlaMethod', { SomeData : $scope.SomeData}).then(
function(){
// function if successfully returned from webapi.
},
function(){
// function if error returned from webapi.
}
);