0

我处于需要在我的 jquery post 方法中发布复杂列表的情况。这是我在做什么

function UpdateOrder() {
    var results = new Array();
    $("#divMainContainer").find(".teamTr").each(function() {
        var o = { 'projectid': $(this).attr("projectid"),
                  'designTeamID': $(this).attr("designTeamID"), 
                  'designTeamOrder': $(this).attr("designTeamOrder") 
                };
        results.push(o);
    });

    var url = "/DesignManagerQueue/UpdateOrder";
    $.post(url, { queryArr: results}, function(data) {
    });

而 MVC 动作是

public JsonResult UpdateOrder(List<SS> queryArr)
{
    //Do something
    return Json(new { Status = true, Message = "" });
}

而类是

public class SS
{
    public string Projectid{ get; set; }
    public int DesignTeamID{ get; set; }
    public int DesignTeamOrder { get; set; }
}

但在行动中

List<SS> queryArr 

是空的

有任何想法吗?

4

2 回答 2

0

您的 js 对象属性应与模型类的属性匹配

public class SS
{
    public string Projectid{ get; set; }
    public int DesignTeamID{ get; set; }
    public int DesignTeamOrder { get; set; }
}

  var o = { 'ProjectId': $(this).attr("projectid"),
                  'DesignTeamID': $(this).attr("designTeamID"), 
                  'DesignTeamOrder': $(this).attr("designTeamOrder") 
                };
于 2013-03-08T10:15:17.763 回答
0

ASP.NET MVC 框架中的模型绑定很简单。您的操作方法需要数据,传入的 HTTP 请求携带您需要的数据。问题是数据被嵌入到 POST-ed 表单值中,可能还有 URL 本身。 MVC 中的模型绑定

模型绑定期望您的属性应该与模型类匹配。

 var o = { 'ProjectId': $(this).attr("projectid"),
                  'DesignTeamID': $(this).attr("designTeamID"), 
                  'DesignTeamOrder': $(this).attr("designTeamOrder") 
                };
于 2013-03-08T10:16:32.947 回答