.Ajax调用不在ASP.NET MVC 5中将我的List对象作为JSON返回,收到错误500:内部服务器错误

时间:2015-05-01 17:48:36

标签: jquery ajax json asp.net-mvc

请有人可以在我的代码中找到一个战利品,看看是否有意义。我只是尝试使用ajax从控制器中的操作方法返回一个List对象作为Json对象,但由于某种原因我在下面的图片中得到错误。我已经尝试了一切,但似乎无法找到问题。

Ajax调用

var ReservationsViewModel = function () {
var self = this;

self.reservations = ko.observableArray();
self.loading = ko.observable(true);


    $.ajax({
            url:'ReservationsOfSelectedDay',
            type: 'GET',
            contentType: "application/json; charset=utf-8",
            dataType:"json",
            success: function(data) {
                self.reservations(data);
                self.loading(false);
            },
            error: function (err) {
                alert(err.status + " : " + err.statusText);
            }
       });
}



$(function () {
    ko.applyBindings(new ReservationsViewModel());
});

控制器操作

 public JsonResult ReservationsOfSelectedDay()
    {
        List<BistroReservations_Reservation> ReservationsPerDay = new List<BistroReservations_Reservation>();

        ReservationsPerDay = db.BistroReservations_Reservations.ToList();


        return Json(ReservationsPerDay,JsonRequestBehavior.AllowGet);
    }

错误

Error

1 个答案:

答案 0 :(得分:0)

HTTP状态500:内部服务器错误表示控制器或调用控制器时出现问题。最常见的原因是您的控制器操作代码抛出异常。

使用调试器逐步执行控制器,或添加一些异常处理并记录异常详细信息。如果从不调用您的控制器,则表示您没有调用正确的URL。

特别关注db。最常见的模式(以及我推荐的模式)是为每次调用控制器操作获取DbContext的新实例。可能db未初始化。