我正在访问使用 LINQ to SQL 自动生成的数据上下文对象。SQL 数据库是一个 SQL Server 2000 机器。我正在使用的类是 SQL 视图。我有一个类似的声明:
query = _context.OrderDetails
.Where(w => w.Product == "TEST")
.OrderBy(o => o.DateCompleted)
.ThenBy(t => t.LineItemId)
.Skip(startRowIndex)
.Take(maximumRows);
但是,当 Skip 的值不是 0 时,我会收到此错误:
此提供程序仅在返回实体或包含所有标识列的投影的有序查询上支持 Skip(),其中查询是单表(非连接)查询,或者是 Distinct、Except、Intersect 或 Union(非 Concat)手术。
我认为在 DateCompleted 和 LineItemId 之间,行将是唯一的,但随后又会弹出。它与这是一种观点有关吗?如果是这样,我该如何规避这个问题?