ViewBag 选择列表 LINQ 表联接

本文关键字:LINQ 选择 列表 ViewBag | 更新日期: 2023-09-27 18:37:15

是否可以在选择列表中连接表?

这是我所拥有的:

ViewBag.Clients = new SelectList(db.IPACS_Clients, "clientID", "name", 0);

我需要加入数据库。IPACS_Clients_Network表中,我仍然需要"clientID",但对于"名称",我需要能够选择 IPACS_Clients.name + " - " + IPACS_Clients_Network.name

使用Viewbag可以做到这一点吗?

ViewBag 选择列表 LINQ 表联接

虽然不建议使用这种方式,但我能够找到答案。

ViewBag.Clients = new SelectList(db.IPACS_Clients_Network
       .Join(
          db.IPACS_Clients,
          v => v.networkClientID,
          s => s.networkClientID,
          (v, s) =>
             new
             {
                 v = v,
                 s = s
             }
       )
       .Select(
          temp0 =>
             new
             {
                 v = temp0.v,
                 s = temp0.s
             }
       ).Select(m => new SelectListItem
       {
           Value = SqlFunctions.StringConvert((double)m.s.clientID).Trim(),
           Text = m.v.name + " - " + m.s.name
       }), "Value", "Text", 0);