2

伙计们,谁能帮助我或指导我看一个淘汰视图模型的示例,其中包含传递给 asp.net mvc 动作的对象数组?我见过的唯一示例显示了正在传递的简单字符串数组。谢谢

4

1 回答 1

4

这是来自官方淘汰赛网站的示例。这是一个使用嵌套数组构建的联系人编辑器。[jsFiddle]

一个合适的 ASP.NET MVC Action 可能看起来像

public ActionResult SaveContacts(IEnumerable<Contact> contacts)

其中 Contact 被定义为类:

public class Contact
{
    public string firstName { get; set; }
    public string lastName { get; set; }
    public IEnumerable<Number> phones { get; set; }
}

其中 Number 被定义为类:

public class Number
{
    public string type { get; set; }
    public string number { get; set; }
}

给定示例中的 JavaScript Knockout 视图模型。你的save方法可能看起来像这样

self.save = function() {
    var jsonString = ko.mapping.toJSON(this.searchParams);
    $.ajax({
        url: "/MyController/SaveContacts",
        data: jsonString,
        type: 'POST',
        contentType: 'application/json',
        dataType: 'json'
    });
};
于 2012-08-23T16:18:11.377 回答