具有多个输入的MVC3强类型模型

时间:2011-12-20 19:38:14

标签: c# asp.net-mvc-3 input model controller

如何将页面中的多个输入全部输入到我的模型列表中,其中模型定义为

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?

2 个答案:

答案 0 :(得分:0)

找到答案:

@Html.TextBoxFor(model => model.matrixPoints[0].x)
@Html.TextBoxFor(model => model.matrixPoints[0].y)

在这方面,您可以迭代和动态地向模型对象添加项目,同时在发布表单时仍保留整个模型,并保留定义模型的验证。

答案 1 :(得分:0)

您必须查看绑定集合到View以及稍后当您发布表单时,所有集合都会在ActionResult中收集。

这是帮助您的链接 http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

它对我有用。

感谢。

相关问题