C# 将Dynamicly创建的数组从视图传递到控制器。ASP.NET MVC v1
我有这个想法:C# 将Dynamicly创建的数组从视图传递到控制器。ASP.NET MVC v1,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,我有这个想法: <% foreach (var item in (List<MyType>)ViewData["MyTypeArray"]) { %><tr> <td> <%=Html.Encode(item.Name)%> </td>
<%
foreach (var item in (List<MyType>)ViewData["MyTypeArray"])
{
%><tr>
<td>
<%=Html.Encode(item.Name)%>
</td>
<td>
<%=Html.CheckBox("MyTypeFlags" + item.BitNumber),
/* Model goes here*/,
new {@value = (1 << item.BitNumber)})%> // html attr
</td>
</tr>
<%
}
%>
问题是我应该如何声明MyDynamiclyCreatedArray并完成这个循环?您应该看看如何使用“视图模型”。您基本上只为视图创建“模型”,其中包含视图中所需的数据项 我经常使用这些工具,它们确实是一种很好的方法,可以让数据进出您的视图
例如,您可以在此处查看:您应该使用“视图模型”查看。您基本上只为视图创建“模型”,其中包含视图中所需的数据项 我经常使用这些工具,它们确实是一种很好的方法,可以让数据进出您的视图
例如,您可以在此处查看:看看Phil Haack的帖子,它使用复选框进行了一些调整,好像复选框未选中,那么它不会提交值 绑定到列表的模型
看看Phil Haack的帖子,它的复选框有点小把戏,好像一个复选框没有被选中,那么它就没有提交值 绑定到列表的模型
我知道这不是一个很好的决定,我应该使用强类型视图,但我现在需要的是as isI,我知道这不是一个很好的决定,我应该使用强类型视图,但我现在需要的是as is
foreach (var item in MyDynamicallyCreatedArray)
{
//if (["MyTypeFlags" + item.BitNumber] != 0) // This shoud be changed
}