C# 将值数组从视图发回控制器
我正在尝试将视图中数组中的所有数据传递回控制器。我不确定如何使用我的ViewModel执行此操作 模范班C# 将值数组从视图发回控制器,c#,asp.net-mvc,asp.net-mvc-3,entity-framework,C#,Asp.net Mvc,Asp.net Mvc 3,Entity Framework,我正在尝试将视图中数组中的所有数据传递回控制器。我不确定如何使用我的ViewModel执行此操作 模范班 public class ResultsViewModel { public int?[] ProgramIds { get; set; } } 视图内部的形状 @using (Html.BeginForm("ExportCsv", "SurveyResponse", FormMethod.Post)) { // Should I be looping through
public class ResultsViewModel
{
public int?[] ProgramIds { get; set; }
}
视图内部的形状
@using (Html.BeginForm("ExportCsv", "SurveyResponse", FormMethod.Post))
{
// Should I be looping through all values in the array here?
@Html.HiddenFor(x => x.ProgramIds)
<input type="submit" value="Submit" />
}
我应该在这里循环数组中的所有值吗?
是的,试试这个:
for (var i = 0; i < Model.ProgramIds.Length; i++)
{
@Html.HiddenFor(x => Model.ProgramIds[i])
}
for(var i=0;iModel.ProgramIds[i])
}
我应该在这里循环数组中的所有值吗?
是的,试试这个:
for (var i = 0; i < Model.ProgramIds.Length; i++)
{
@Html.HiddenFor(x => Model.ProgramIds[i])
}
for(var i=0;iModel.ProgramIds[i])
}
我应该在这里循环数组中的所有值吗
是的,但不要使用@Html.HiddenFor(..),因为它似乎会生成无效的Html,因为它会生成具有相同ID的控件:
<input id="ProgramIds" name="ProgramIds" type="hidden" value="3" />
<input id="ProgramIds" name="ProgramIds" type="hidden" value="4" />
而是循环列表并创建自己的隐藏html字段:
for (var i = 0; i < Model.ProgramIds.Length; i++)
{
<input type="hidden" name="ProgramIds[@i]" value="@Model.ProgramIds[i]" />
}
for(var i=0;i
Scott Hanselman写了一篇关于此的博客文章:
我应该在这里循环数组中的所有值吗 是的,但不要使用@Html.HiddenFor(..),因为它似乎会生成无效的Html,因为它会生成具有相同ID的控件:
<input id="ProgramIds" name="ProgramIds" type="hidden" value="3" />
<input id="ProgramIds" name="ProgramIds" type="hidden" value="4" />
而是循环列表并创建自己的隐藏html字段:
for (var i = 0; i < Model.ProgramIds.Length; i++)
{
<input type="hidden" name="ProgramIds[@i]" value="@Model.ProgramIds[i]" />
}
for(var i=0;i
Scott Hanselman写了一篇关于此的博客文章: