如何在asp.net mvc中使用局部视图发布List <model>?

时间:2017-06-03 22:21:32

标签: c# asp.net-mvc

主要问题:是否可以在asp.net mvc

中使用部分视图发布模型列表

示例:让我们假设classStudent,其中包含2个属性(RollNo(int)和名称(string))

public class Student 
{ 
     public int RollNo { get; set; }
     public string Name { get; set; }
}

控制器有帖子方法,我想要从部分视图的学生名单

[HttpPost]
public ActionResult PostListOfStudents(List<Student> lstStudents)
{
    //some logic
}

1 个答案:

答案 0 :(得分:1)

确定你可以。

这是局部视图模型:

@model List<Student>

您只需迭代列表模型,如下所示:

@Html.BeginForm("action", "controller", FormMethod.Post)
{
    if (Model != null) 
    {
       for (var i = 0; i < Model.Count; i++) 
       {
           @Html.TextBoxFor(m => Model[i].Name)
           @Html.TextBoxFor(m => Model[i].RollNo)
       }
       <input type="submit" value="Post Data" /> 
    }
}

您可以在部分视图中传递Students列表,如下所示:

@Html.Partial("_partialview", listOfStudents);

然后在您的发布操作中,您将获得学生列表。请务必使用适当的输入扩展方法。