代码之家  ›  专栏  ›  技术社区  ›  bzarah

MVC默认模型绑定器-将多选下拉列表绑定到IList<T>

  •  2
  • bzarah  · 技术社区  · 14 年前

    我有一个使用NHibernate的工作视图、控制器和数据访问层,它能够显示和保存与另一个映射实体有关系的实体:

    人员-->位置

    它使用的是HTML助手HTML.DropDownListFor()显示所有位置的列表。用户可以从列表中选择一个位置,然后按save。

    人员位置将成为一名律师

    多选 下拉并填充IList。

    http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx .

    这里的问题是,我只有一个下拉列表,它将向modelbinder发回一个具有不同值的重复键:



    Person.Location.Id: 5

    有什么想法吗?

    1 回复  |  直到 12 年前
        1
  •  1
  •   Clicktricity    14 年前

    一个建议:

    将列表项的名称更改为“Locations”,然后在操作方法中包含一个参数 string[] locations

    如果MVC能够正确匹配这些名称,那么您应该会收到一个选定项的数组。然后可以手动处理使用适当的插入和删除来更新数据库。

    推荐文章