多输入的MVC3强类型模型
本文关键字:强类型 模型 MVC3 输入 | 更新日期: 2023-09-27 18:18:21
我如何在一个页面中有多个输入,所有输入都提供给我的模型列表,其中模型定义为
public class MatrixSet
{
List<MatrixPoints> matrixPoints { get; set; }
}
public class MatrixPoints
{
double x { get; set; }
double y { get; set; }
}
我不确定在视图中使用什么,说,4个输入字段,所有输入矩阵点,然后当发布控制器将具有类型matrixset的模型,其中将包含在视图中输入的矩阵点列表。我知道如何做到这一点,而不通过模型,但我试图坚持最佳实践方法。我可以让每个输入字段是@Html.TextBoxFor(),然后它会填补MatrixSet中的MatrixPoints列表假设在我的视图顶部我使用@model Models.MatrixSet?
找到答案了:
@Html.TextBoxFor(model => model.matrixPoints[0].x)
@Html.TextBoxFor(model => model.matrixPoints[0].y)
在这方面,您可以迭代地和动态地向模型对象添加项,同时在发布表单时仍然保持整个模型,并保留来自已定义模型的验证。
你必须寻找绑定集合到视图,然后当你发布表单时,所有的集合在ActionResult中被收集。
这是帮助你的链接http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx
它适合我。
谢谢。