好的,我在SO上发现了很多关于如何在使用LINQ时从数据库中提取RANDOM项目的帖子。似乎有几种不同的方法来处理这个问题。我需要做的是从用户以前没见过的数据库中提取RANDOM项目。
我从数据库中提取的数据非常少。有没有什么方法可以只针对1000条记录点击一次数据库,然后随机滚动浏览那些?
我是否应该在用户系统上放置一个cookie来记录他们看过哪些项目的ID,拉一条随机记录,检查是否可以看到它,如果是,请再次从数据库中取出?这似乎等待发生性能问题。
我不希望有人为我编码,我只是在寻找概念并指出我应该如何解决这个问题。
需要更多详情?请告诉我!
答案 0 :(得分:1)
这个问题的通常答案是创建一个随机排序的列表并线性滚动它。所以你要拉
a, b, c, d, e, f
使用随机算法对其进行重新排序
b, e, f, a, c, d
然后只是做一个线性步行。