gpt4 book ai didi

c# - 使用多个表中的数据创建下拉列表

转载 作者:行者123 更新时间:2023-12-02 09:41:09 24 4
gpt4 key购买 nike

我想创建供应商下拉列表。我的数据库中有一个 Vendors 表,其中包含 VendorID 和 CompanyID。 Company 表包含 CompanyID 和名称。

我想要一个下拉列表,其中包含以 VendorID 作为值、以公司名称作为文本的项目。但我不知道如何从相关表中获取名称字段以放入下拉列表中,因此我将 VendorID 作为值和文本。这就是我现在所拥有的。

我正在传递一个包含以下内容的模型:

public IEnumerable<Vendor> Vendors { get; set; }

在我的 Controller 中,我设置 Vendors 的值,如下所示:

MyDBEntities _entities = new MyDBEntities();
Vendors = _entities.Vendors;

这是我在页面上的下拉列表:

<%= Html.DropDownListFor(m => m.VendorId, new SelectList(Model.Vendors, "VendorID", "VendorID"), "- Select a Vendor -")%>

我认为我可以创建一个自定义函数 - GetVendorsForDropdown - 它将仅返回我需要的数据,并将我的模型更改为包含 IEnumerable<Something> 。但我不知道返回类型应该是什么。

最佳答案

使用 linq 并将它们作为 ListItem 返回

MyDBEntities _entities = new MyDBEntities();
var data = from v in _entities.Vendors
from c in _entities.Companies
where v.CompanyId = c.CompanyId
select new ListItem{Value = v.VendorId, Text = c.CompanyName};

return data;

关于c# - 使用多个表中的数据创建下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5557547/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com