0
$http({
method: 'GET',

dataType: 'json',

url: 'Calendar/GetDate',

params: { calenderId: $scope.CalendarId, fyYear: new Date(viewValue).toUTCString() 

}
}).success(function (result) {

alert(result);

});

低于值获得回报,它不调用控制器方法


[UMAuthorize]
public ActionResult GetDate(string calenderId, DateTime fyYear)
{
 ....... 
 .....
return Json(new { startDate }, JsonRequestBehavior.AllowGet);
}
4

2 回答 2

0

我怀疑传递的 url 是错误的,使用Url.Action()helper 生成正确的 url:

改变:

url: 'Calendar/GetDate'

至:

url: '@Url.Action("GetDate","Calendar")'
于 2014-07-21T06:30:27.003 回答
0

您正在将数据发布到控制器,所以我想您应该将属性 HttpPost 如下所示:-

[UMAuthorize]
[HttpPost]
public ActionResult GetDate(string calenderId, DateTime fyYear)
{
 ....... 
 .....
return Json(new { startDate }, JsonRequestBehavior.AllowGet);
}

并从您调用控制器使其成为 Post 方法而不是 Get ,如下所示:-

$http({
method: 'POST',

dataType: 'json',

url: 'Calendar/GetDate',

params: { calenderId: $scope.CalendarId, fyYear: new Date(viewValue)

}
}).success(function (result) {

alert(result);

});

并且fyYear您的对象是控制器中的 DateTime 但您将其转换为字符串然后发送,因此它与控制器的参数不匹配

于 2014-07-21T05:47:15.070 回答