ASP.NET MVC在模型中绑定数组

cmv*_*cmv 41 asp.net-mvc

这有点是一个由两部分组成的问题(请告诉我们是否应该分开).

1)我有一个模型类,其中包含一个对象数组.我希望能够自动绑定它,这样我就可以pollModel在控制器中接受一个参数.

public class pollResponseModel
{
    public long id { get; set; }
    public long pollID { get; set; }
    public string text { get; set; }
    public long count { get; set; }
}

public class pollModel
{
    public long id;
    public long entID { get; set; }
    public string question { get; set; }
    public DateTime posted { get; set; }
    public DateTime expiration { get; set; }

    public pollResponseModel[] responses { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

问题是我不确定如何绑定该responses字段,因为它可以是任意大小.好吧,我可以在显示编辑视图时正确绑定它,但这就是它.这引出了我的问题的第二部分:

2)在客户端的列表中动态创建和删除数据的可接受方式是什么,以便它可以绑定到模型并在服务器上以修改后的形式访问?我设想创建/删除过程像iPhone列表GUI一样工作:单个+按钮将添加一个新元素,-每行数据上的一个按钮将从列表中删除它.我认为jQuery是一个合适的起点,但我的JS技能非常有限.

wom*_*omp 48

查看Phil Haack撰写的这篇文章:模型绑定到列表.它准确地解释了绑定到列表属性或复杂对象属性所需要做的事情.

基本上,您只需要以正确的方式构造POST数据,模型绑定器就可以对其进行解析.本文介绍了如何添加隐藏索引字段并在表单中表示复杂属性.