gpt4 book ai didi

c# - Entity Framework 从另一个 E.F 选择查询获得的 ID 列表中选择

转载 作者:行者123 更新时间:2023-11-30 19:36:27 25 4
gpt4 key购买 nike

enter image description here

我正在尝试使用 where 语句从 E.F 查询中获取 ItemsEntity。该条件从另一个返回超过 1 个 item_id 的 E.F 查询获取 item_id。

var item_id = (from n in db.OrderDetail where n.OrderId == id select n.item_id);
var itemEntity = (from m in db.ItemsEntity where *m.item_id==item_id* select m);

最佳答案

当您想在 Where 子句中使用集合时,可以使用 Contains 方法

var listOfIds = (from n in db.OrderDetail where n.OrderId == id select n.item_id);
var itemEntity = (from m in db.ItemsEntity where listOfIds.Contains(m.item_id) select m);

请记住,使用上面的代码,itemEntity 变量将被收集。如果您想要单个项目,请根据需要使用 FirstOrDefault()First() 等方法。

上面的代码也可以写成如下的LINQ方法链

var listOfIds = db.OrderDetail.Where(n=>n.OrderId == id).Select(x=>x.item_id);
var itemEntity = db.ItemsEntity.Where(m=>listOfIds.Contains(m.item_id));

关于c# - Entity Framework 从另一个 E.F 选择查询获得的 ID 列表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45941679/

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