Angularjs $ http.post,asp.net mvc控制器获取null

hyp*_*erN 6 javascript asp.net-mvc asp.net-mvc-4 angularjs

在我的Angularjs服务中,我有这个代码:

$http.post("/EditWorkout/GetId", data).error(function (responseData) {
            console.log("Error !" + responseData);
        });
Run Code Online (Sandbox Code Playgroud)

我在我的ASP.net控制器中有这个方法:

       [System.Web.Http.HttpPost]
        public JsonResult GetId(string routineId)
        {
            try
            {
                string x = routineId;
                return Json(new {success = true});
            }
            catch (Exception ex)
            {

                return Json(new { success = false, errorMessage = ex.Message });
            }

        }
Run Code Online (Sandbox Code Playgroud)

我已经设置了一个断点return Json(new {success = true});并且它被触发了,但是我的routineId由于某种原因是null,而且我使用angular的$ http.post发送的数据不是.

为什么会这样?

Mar*_*Ban 8

试试这个:

$http.post("/EditWorkout/GetId", { routineId : data}).error(function (responseData) {
            console.log("Error !" + responseData);
        });
Run Code Online (Sandbox Code Playgroud)

  • 并且......为什么这样做?是因为routineId在控制器和json对象中是相同的名称? (2认同)