gpt4 book ai didi

LINQ 查询相关属性中的 ofType

转载 作者:行者123 更新时间:2023-12-01 06:34:01 27 4
gpt4 key购买 nike

如何通过相关属性中的“OfType”过滤 LINQ 查询?

示例:我在 OrderLines 集合中搜索包含匹配的 productID 列表中的产品的订单行。我想使用 contains 来完成这个:

OrderLines.Where(o => productIDs.contains(o.ProductID))

但是,我只想选择与销售订单相关的订单行,而不是采购订单。所以 OrderLines.Document需要是 ofType<SalesOrder>

我如何将其用于 linq 查询?

我尝试了 getType 但得到了这个错误: “LINQ to Entities 无法识别‘System.Type GetType()’方法,并且无法将此方法转换为存储表达式。”

最佳答案

过滤 Order,然后过滤它们的 OrderLine:

from o in Orders.OfType<SalesOrder>()
from ol in o.OrderLines.Where(ol => productIDs.Contains(ol.ProductID))

这是一样的

Orders.OfType<SalesOrder>().SelectMany(o =>
o.OrderLines.Where(ol => productIDs.Contains(ol.ProductID)))

关于LINQ 查询相关属性中的 ofType,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16266367/

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