我试图将数据从 AngularJS 传递到 ASP.net MVC,但始终为 null。
这是我的代码(仅发布必要的按钮、控制器和 c#:
HTML:
<a class="btn btn-grey btn-lg btn-block" ng-click="AddCar()">Save</a>
控制器
$scope.AddCar = function () {
$http.post("Cars/AddCar", JSON.stringify($scope.new.JsonCar)).success(function (data) {
Alert(ok)
})
c#
public string AddCar(string JsonCar)
{
try
....
}
在 JSON.stringify($scope.new.JsonCar) 我得到这个:
"{"名称":"菲亚特 500","描述":"新
汽车","MaxUserCapacity":5,"PhotoPath":"无"}"
我做错了什么?
直接将对象作为对象传递,而不是对其进行字符串化。因为它现在正在传递,所以它是一个字符串,而不是一个可以正确反序列化的对象。
$http.post("Cars/AddCar", $scope.new.JsonCar).success(function (data) {
Alert(ok)
})
创建一个与您的有效负载匹配的 Car 对象。序列化器将为您处理 JSON 对象。
public Car AddCar(Car car)
{
try
....
}
我的假设是,无论如何,在某些时候您都会将字符串反序列化为对象。这只是为您节省了额外的步骤。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)