0

我正在使用 MVC 4 和实体框架在 VB.Net 中创建一个 Web 应用程序。我想提交一个同时创建多个实体的表单。例如,如果我有简单的实体......

Public Class Employee
    Public Property EmployeeID As Integer
    Public Property Name As String
End Class

在我看来,我希望能够一次获取用户输入来创建多个员工,然后将所有这些数据发布回控制器操作。就像是...

@Using Html.BeginForm("AddEmployees")
    here is input for first employee
    here is input for second employee
    etc...
End Using

如果我能在我的控制器动作中说,那就太好了......

<HttpPost()>
Function AddEmployees(SomeCollection As Collection(Of Employee)) As ActionResult
    For Each item in SomeCollection
        do stuff with data...
    Next
    Return RedirectToAction("Index")
End Function

我应该如何正确发布这些数据以及如何在我的控制器中访问它?我查看了 C# 中的相关源,但无法复制它。

4

1 回答 1

1

您只需为希望拥有的员工重复员工输入字段即可。

Name:   <input type="text" name="[0].Name" value="" /><br>
Name:   <input type="text" name="[1].Name" value="" /><br>
Name:   <input type="text" name="[2].Name" value="" /><br>
Name:   <input type="text" name="[3].Name" value="" /><br>

提交后,模型绑定将负责填充员工列表并设置 Name 属性。

我建议使用 jQuery 之类的东西来设置一个按钮,让用户可以选择在屏幕上动态添加更多字段。

于 2013-08-06T19:40:31.970 回答