如何使用AngularJS发布到WebApi.NET/C#controller?
我知道周围也有类似的问题,但我找不到解决办法,所以我来了。 以下是我的AngularJS员工:如何使用AngularJS发布到WebApi.NET/C#controller?,c#,angularjs,http,post,asp.net-web-api2,C#,Angularjs,Http,Post,Asp.net Web Api2,我知道周围也有类似的问题,但我找不到解决办法,所以我来了。 以下是我的AngularJS员工: $scope.someData = { Name: "Bob", PhoneNo: 123 }; var data = { SomeData: $scope.somedata }; var response = $http({ url: "/api/BlaBla/BlaBlaMethod", method: "POST", data: data, }
$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#controller:
[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; }
}
我尝试了公共字符串blablamMethod([FromBody]MyModel MyModel)
,
公共列表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.
}
);
这与
$http({url:/api/BlaBla/blablablamethod”,方法:“POST”,数据:data,JSON.stringify(data)})不一样吗代码>?是的,这看起来有点干净,但即使在您的序列中,您也需要为成功和错误定义回调。检查这里的更多信息,我已经定义了回调,我没有把它们放在问题中,因为它们是无关的。问题在于控制器不接受数据…我已编辑了答案,请尝试一下,然后让我知道这是否解决了您的问题。我不想发布SomeData:$scope.SomeData
,但我想发布data
,其中包括SomeData:$scope.SomeData
。你的回答不能满足我的需要。