【问题标题】:Populating Html.DropDownList with foreign key table vlaues用外键表值填充 Html.DropDownList
【发布时间】:2009-09-07 11:15:57
【问题描述】:

我面临无法将外键表值正确映射到 asp.net mvc 编辑视图的问题。

我放置了一个 Html.DropDownList 并创建了一个 IENumerable/IQueryable 辅助函数返回:

from item in db.items select item.name

它用外键表中的所有名称填充我的 Html.DropDownList,但值字段中没有任何内容。

但是如何让 DropDownList 显示名称但让 Value 字段成为该外键表的 ID 字段?

【问题讨论】:

    标签: c# sql-server asp.net-mvc linq


    【解决方案1】:

    如下更改 linq-query:

    var list = 来自 db.items 中的项目 选择新的 {item.id, item.name};

    然后按如下方式创建一个选择列表:

    var items=new SelectList(list, "id","name");

    并将该选择列表传递给下拉列表

    Html.DropDownList("name",items)

    【讨论】:

    • 这是否也适用于使用 id 和 formcollection 的 [Post]Edit 功能,还是我需要进一步调整它以保存新值?
    • 您需要创建一个带有选定值的新选择列表: >new SelectList(list, "id", "name", itemthatneedstobeselected.id);请注意,它需要我的“价值”本身,在这种情况下是 id,而不仅仅是您收藏中的一个对象。
    猜你喜欢
    • 2013-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多