asp.net-mvc-3 – MVC3非顺序索引和DefaultModelBinder

是否真的MVC 3.0中的认模型绑定器能够处理非顺序索引(对于简单和复杂的模型类型)?我遇到了建议它应该的帖子,但是在我的测试中,它似乎并没有。

给定后回值:

items[0].Id = 10
items[0].Name = "Some Item"
items[1].Id = 3
items[1].Name = "Some Item"
items[4].Id = 6
items[4].Name = "Some Item"

和控制器方法

public ActionResult(IList<MyItem> items) { ... }

仅加载的值为项0和1;项目4被简单地忽略。

我已经看到了许多解决方案来生成自定义索引(Model Binding to a List),但是他们都看起来针对以前版本的MVC,并且大多数是有点’重型’IMO。

我缺少什么?

解决方法

我有这个工作,你必须记住添加一个常见的索引隐藏输入,如解释在您参考的文章

name = Items.Index的隐藏输入是关键部分

<input type="hidden" name="Items.Index" value="0" />
<input type="text" name="Items[0].Name" value="someValue1" />

<input type="hidden" name="Items.Index" value="1" />
<input type="text" name="Items[1].Name" value="someValue2" />

<input type="hidden" name="Items.Index" value="3" />
<input type="text" name="Items[3].Name" value="someValue3" />

<input type="hidden" name="Items.Index" value="4" />
<input type="text" name="Items[4].Name" value="someValue4" />

希望这可以帮助

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....