我想在SOLine中预览项目。我应该用
PXSelectBase<SOLine> lines = new PXSelect<SOLine, Where<SOLine.orderNbr,Equal<Required<SOLine.orderNbr>>>>(graph);
foreach (SOLine item in lines.Select(order.OrderNbr)) {}
或者
List<SOLine> lines = PXSelect<SOLine, Where<SOLine.orderNbr, Equal<Required<SOLine.orderNbr>>>>.Select(graph, order.OrderNbr).FirstTableItems.ToList();
foreach (SOLine item in lines) {}
我不知道哪个更好。抱歉我的英文。
答案 0 :(得分:2)
我更喜欢第一个样本,但主要是出于以下原因:
答案 1 :(得分:1)
您的示例中显示的两种方法之间没有任何重要区别,除了FirstTableItems
之外的那种方法会让您做一些额外的步骤 - 至少调用此属性本身。
我建议使用纯Select(..)
的第一种方法,因为它更简洁并且做同样的事情。 FirstTableItems
只会将结果集的项目转换为第一个项目的类型,并为您提供键入的可枚举项(在您的案例中为IEnumerable<SOLine>
),但因为您foreach
执行了{{1}}可以隐式完成项目转换 - 就像在第一个示例中一样。因此,最好使用更简单的选项。