c#-.Net MVC 4如何在模型中或从表单提交时的表单集合中获取数组

我正在使用.net MVC 4,我的问题是我有多个具有相同名称的输入控件,后缀为0,1,2,例如数组.我想要所有这些值在一个对象或对象列表中.我的View(Razor,.cshtml)中的控件如下所示:

<input type="hidden" value="FirstName" name="MyListData[0]" id="MyListDataUnSelected_0_">
<input type="hidden" value="MiddleName" name="MyListData[1]" id="MyListDataUnSelected_1_">
<input type="hidden" value="LastName" name="MyListData[2]" id="MyListDataUnSelected_2_">

我在控制器上的post方法是这样的:

public ActionResult Index(List<string> MyListData, FormCollection pFormCollection)

从集合中得到的值是MyListData [0],MyListData [1],…
但List MyListData为null.我在同一代码中应用了另一个Page,在这种情况下,我获得了MyListData中的值列表.

我也尝试使用string [] MyListData,但仍然无法正常工作.

如何在模型中或从表单集合中获取该列表.

解决方法:

我当前的解决方案是

List<string> lststr=new List<string>();
int i=0;
while(true)
{
    if(pFormCollection["MyListData[" + i + "]"]!=null)
    {
         lststr.add(pFormCollection["MyListData[" + i + "]"]);
         i++;
    }
    else
        break;
}

或总之

List<string> lststr=new List<string>();
int i=0;
while(pFormCollection["MyListData[" + i + "]"]!=null)
{

         lststr.add(pFormCollection["MyListData[" + i + "]"]);
         i++;

}
上一篇:javascript-如何使用jQuery重置我的Ajax.Begin表单字段值


下一篇:C#-初学者. cshtml if,随机数并将数据传回