![]() |
1
41
另一个选项是使用OrderBy和对GUID值进行排序,您可以使用:
我做了一些实证测试,以说服自己上述事实上产生了一个随机分布(似乎是这样)。你可以在网站上看到我的结果 Techniques for Randomly Reordering an Array . |
![]() |
2
106
继mquander的回答和Dan Blanchard的评论之后,下面是一个LINQ友好的扩展方法,它执行 Fisher-Yates-Durstenfeld shuffle :
|
![]() |
3
15
|
![]() |
5
0
随机性稍低,但效率较高:
|
![]() |
6
-1
然后,我有我的源列表(所有项目)
最后,我调用“随机化”,得到一个项目的随机子集合,在我的例子中,有5个项目:
|
![]() |
7
-3
对不起,代码很难看:-),但是
|
![]() |
user1702369 · 模型中的IEnumerable可观察 7 年前 |
![]() |
pyriame · 沙马林。表单:输入一个字符后取消焦点输入 7 年前 |
![]() |
Losec · 使用命令过滤ObservableCollection 7 年前 |
![]() |
Riyas · 如何更新可观察集合组 7 年前 |