我正在开发一个使用RavenDB 3的ASP.NET MVC应用程序。我对乌鸦没有太多的经验。Raven以特定方式分页查询
通常,执行查询来显示数据时,页面上会返回前128个项目。通过使用分页查询,可以在“无限滚动”中添加更多记录。
但是,现在我要求项目以“组”的形式加载。
假设下面的类:
public class Item {
public string Id { get; set; }
public int Group { get; set; }
public string text { get; set; }
}
假设数据库包含具有组40项= '1',其具有组40项= '2' 和50项具有基团= '3'。
这是一共有130个项目。这意味着最后一个“团队”不会完整。它会缺少2个项目。
我想要一个机制,意识到这一点,以便它将获取至少128 AND将获取'额外',如果最后一个组没有完全包括在内。
之后,当我读取下一页时,我希望它从下一组开始。
有没有什么办法可以让我做这个工作,而不用通过多次调用自己来制作单个页面?
编辑:我不能假定组的大小完全相等,但我可以假设的大小将是“simular”
而且,我不能改变设计来存储所有的项目在一个单一的“group'-对象。
这些组是真的数字吗?如果他们是按顺序加载它们?例如,你的分页总是加载1-3组,而下一页是4-6组? –
@KentCooper:是的,它们是有序的。 – Bjorn