我正在尝试对 WPF 应用程序中的数据集进行分页。
我的服务方法如下所示:
public ObservableCollection<MyModel> GetPageOfModels(int projectId, int numSkip, int numResults)
{
this.db.Set<MyModel>()
.Where(x => x.Project.Id == projectId)
.OrderBy(x => x.Name)
.Skip(numSkip)
.Take(numResults)
.Load();
return this.db.Set<MyModel>().Local;
}
这在第一次被击中时效果很好。但是当我移动到不同的页面时,Load()
将下一页添加到集合中,而不是替换它。
如果我在每次调用GetPageOfModels
它之前重新创建数据上下文,但我需要保持相同的数据上下文。有什么办法可以做到这一点?