gpt4 book ai didi

c# - 在 LINQ 中通过子属性排序父对象

转载 作者:行者123 更新时间:2023-11-30 13:43:14 25 4
gpt4 key购买 nike

如何在 LINQ 中按子对象排序?

A、B 和 C 类。A 有 B 的集合,B 有 C 的集合。我想通过 C 的序数 (int) 属性对对象 A 进行排序。

var query = from a in db.A
orderby a.Bs.OrderBy(x=> x.C.Ordinal) <--- ??
select a;

我似乎无法弄清楚 orderby 语句。

编辑:

对不起,我原来的说法是错误的:

A 有一个 B 的集合,B 有一个 C 对象。 C 不是集合。

每个 A 都应按 C 的序数属性排序。

另一个编辑/解决方案:

在显示期间,我最终在客户端为 A 中的每个 B 集合执行了 .OrderBy(b=>b.C.Ordinal)。无论如何,结果更好,因为我可以让客户按他们需要的任何东西订购,而不是将其嵌入我的存储库中。

最佳答案

你需要弄清楚你对哪个 C 感兴趣。

从现实的角度考虑这一点 - 如果您尝试按 child 的年龄对 parent 进行排序,您会考虑哪个 child 的年龄?如果您的一位 parent 有 1 岁和 5 岁的 child ,一位 parent 有 2 岁和 4 岁的 child ,哪个应该排在第一位?

关于c# - 在 LINQ 中通过子属性排序父对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/634829/

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