getJSON返回null MVC3 - 4

时间:2012-12-07 15:41:22

标签: asp.net-mvc-3 jquery asp.net-mvc-4 getjson

所以,我遇到了从我的行动中获取json的问题,希望有人可以指出我的错误。

所以,这是我的jQuery:

$("#ProductSelect").change(function () {
    $.getJSON('Admin/GetProduct?id=' + $(this).val(), function (data) {
        var json = $.parseJSON(data);
        alert(json);
    });
});

这是它所谓的行动:

[HttpGet]
    public JsonResult GetProduct(int id)
    {
        var product = new Product();
        product.GetProductById(id);
        return this.Json(product, JsonRequestBehavior.AllowGet);
    }

JS中的警报一直显示为null。没有JS错误(使用Firebug)。使用Action上的断点,我可以看到Product已正确填充。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

显然你的控制器使用一个刚刚初始化的对象而没有任何信息。您是否忘记使用数据库对象,然后将该ID作为主键?像这样:

[HttpGet]
    public JsonResult GetProduct(int id)
    {
        //private DataContext db
        return Json(db.GetProductById(id), JsonRequestBehavior.AllowGet);
    }