[英]AngularJS $http.post not working with asp.net mvc inside ng-view
[英]Pass Data $http.post From AngularJS and ASP.net MVC gets null
我正在嘗試將數據從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
....
}
我的假設是,無論如何,您將字符串反序列化為對象。 這只是為您節省了額外的一步。
刪除JSON.stringify,您的對象已經是JSON。
添加[FromBody]屬性:
public string AddCar([FromBody]string JsonCar)
{
try
....
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.