【发布时间】:2020-04-18 22:02:37
【问题描述】:
我有一个IQuerable<Post>,要随机排序,我会执行以下操作:
IQuerable<Post> posts = getPosts();
posts = posts.OrderBy(x => Guid.NewGuid());
是否可以每天随机排序?
如果我在 4 月 18 日订购,我总是会收到相同的订单。
但在 4 月 19 日,我会收到另一个随机订单。
【问题讨论】:
-
Post 的收集是否在白天发生变化?基于日期的过期时间缓存怎么样?您每天只订购一次,然后一整天都使用缓存订单,第二天再重新订购?
-
这能回答你的问题吗? Randomize a List<T>
-
@PavelAnikhouski - 为什么会回答这个问题?
-
@Enigmativity 因为它解释了如何使用
Random类、Guid.NewGuid和其他技术来解决 OP 问题,以及该站点上的大量重复 -
@PavelAnikhouski - 但这不是 OP 所要求的。他希望每天都有一个稳定的排序。他清楚地知道如何随机排序(尽管他使用的 Guid 并不是获得随机性的最佳方式)。
标签: c# linq linq-to-entities