View那边类似<input name="model[0].ID" value="100" />
<input name="model[1].ID" value="100" />
<input name="model[2].ID" value="100" />我传给View是一个List<model>的强类型。接收数组的话VIEW应该如何写?
<input name="model[1].ID" value="100" />
<input name="model[2].ID" value="100" />我传给View是一个List<model>的强类型。接收数组的话VIEW应该如何写?
用Js获取,到Controller里拆,再转换成你要的List<model>
二、基于索引的数组绑定
对于存在于作为ValueProvider数据源的NameValueCollection/Dictionary<string, object>中的数据项来说,如果它们绑定的对象是一个数组,可以采用相同的名称。这样的Model绑定方式仅仅是用于元素为简单类型的数组。除此之外,也可以采用格式为“[index]”的基于索引的前缀来表示。ValueProvider基于索引的匹配策略也可以通过HtmlHelper<TModel>的模板方法EditorFor来体现。如下面的代码片断所示,在一个Model类型为Contact数组的强类型View中,我们调用HtmlHelper<TModel>的扩展方法EditorFor将数组的前两个元素的相关信息以编辑模式呈现出来。 1: @model Contact[]
2: @Html.EditorFor(m => m[0].Name)
3: @Html.EditorFor(m => m[0].PhoneNo)
4: @Html.EditorFor(m => m[0].EmailAddress)
5:
6: @Html.EditorFor(m => m[1].Name)
7: @Html.EditorFor(m => m[1].PhoneNo)
二、基于索引的数组绑定
对于存在于作为ValueProvider数据源的NameValueCollection/Dictionary<string, object>中的数据项来说,如果它们绑定的对象是一个数组,可以采用相同的名称。这样的Model绑定方式仅仅是用于元素为简单类型的数组。除此之外,也可以采用格式为“[index]”的基于索引的前缀来表示。ValueProvider基于索引的匹配策略也可以通过HtmlHelper<TModel>的模板方法EditorFor来体现。如下面的代码片断所示,在一个Model类型为Contact数组的强类型View中,我们调用HtmlHelper<TModel>的扩展方法EditorFor将数组的前两个元素的相关信息以编辑模式呈现出来。 1: @model Contact[]
2: @Html.EditorFor(m => m[0].Name)
3: @Html.EditorFor(m => m[0].PhoneNo)
4: @Html.EditorFor(m => m[0].EmailAddress)
5:
6: @Html.EditorFor(m => m[1].Name)
7: @Html.EditorFor(m => m[1].PhoneNo)
我需要这种方式,但实现不了……,人家说这样
{
<input name="@item.ID" value="100"/>}