Asp.net mvc 使用非顺序索引将模型绑定到列表。我可以稍后访问索引吗?

Asp.net mvc 使用非顺序索引将模型绑定到列表。我可以稍后访问索引吗?,asp.net-mvc,model-binding,ilist,Asp.net Mvc,Model Binding,Ilist,我正在关注菲尔的精彩教程 我使用如下输入名称: book[5804].title book[5804].author book[1234].title book[1234].author 这很有效,数据很好地返回到模型中,填充了一个图书列表 我要寻找的是一种在模型中访问用来发送书籍的索引的方法。我想得到这个数字,“5804”。这是因为索引具有语义重要性。如果我可以访问它,它可以避免我在对象上设置另一个属性(图书ID) 在调用UpdateModel后,是否有方法在FormCollection或模

我正在关注菲尔的精彩教程

我使用如下输入名称:

book[5804].title
book[5804].author
book[1234].title
book[1234].author
这很有效,数据很好地返回到模型中,填充了一个图书列表

我要寻找的是一种在模型中访问用来发送书籍的索引的方法。我想得到这个数字,“5804”。这是因为索引具有语义重要性。如果我可以访问它,它可以避免我在对象上设置另一个属性(图书ID)


在调用UpdateModel后,是否有方法在FormCollection或模型上查看发送时的索引是什么?

如果索引具有语义重要性,请将其放入模型中:

book[0].id = "5804"
book[0].title = "title 1"
book[0].author = "author 1"

book[1].id = "1234"
book[1].title = "title 2"
book[1].author = "author 2"

如果其他人想这样做,这个问题的答案是“不,以后不能访问索引。”

这需要我在标记中添加一个额外的隐藏输入字段。我希望避免这种情况。我明白您关于在模型中包含语义字段的观点,事实上,我打算在FormCollection到达模型后填充ID。如果我能从FormCollection中读取索引,这似乎是解决这个问题的一个优雅方法。你是说这不可能,达林?