gpt4 book ai didi

c# - 按列表中的子属性排序

转载 作者:太空宇宙 更新时间:2023-11-03 23:02:56 24 4
gpt4 key购买 nike

我有两个表 - 博客和帖子(一对多关系)。

我想获取所有至少有 3 个的博客,并且在发布日期之前只为博客和订单列表取 3 个帖子。

我在尝试什么:

_context.Blogs.Where(x => x.IsActive && x.Posts.Count >= 3).OrderByDescending(p => p.Posts.OrderByDescending(x => x.PublishDate)).ToList();

但我收到一条错误消息:

ArgumentException: At least one object must implement IComparable.

更新:

好的,我知道按发布日期排序会有问题。我在 Blog 表中也有 LastBuildDate 属性。那么如何按 LastBuildDate 订购?

最佳答案

嵌套排序会导致此错误:

.OrderByDescending(p => p.Posts.OrderByDescending(x => x.PublishDate))

外部订单正在评估 Posts 属性所在的对象,该对象未实现 IComparable。例如,如果您这样做了:

.OrderByDescending(p => p.Posts.Max(x => x.PublishDate))

Max 返回一个 DateTime。但是,帖子上的 OrderbyDescending 会返回它无法在此处评估的内容...

关于c# - 按列表中的子属性排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42447623/

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