J'accède à un objet de contexte de données généré automatiquement à l'aide de LINQ to SQL. La base de données SQL est une zone SQL Server 2000. La classe avec laquelle je travaille est une vue SQL. J'ai une déclaration qui ressemble à ceci:LINQ, Ignorer, OrderBy et SQL Server 2000
query = _context.OrderDetails
.Where(w => w.Product == "TEST")
.OrderBy(o => o.DateCompleted)
.ThenBy(t => t.LineItemId)
.Skip(startRowIndex)
.Take(maximumRows);
Cependant, lorsque la valeur de saut est tout sauf 0, je reçois cette erreur:
Ce fournisseur prend en charge Skip() que sur ordonné requêtes retour des entités ou des projections qui contiennent toutes les colonnes d'identité, où la requête est une requête à table unique (non jointe) ou est une opération Distinct, Except, Intersect ou Union (non Concat).
Je pense que entre le DateCompleted et LineItemId que les lignes seraient uniques, mais là encore cela apparaît. Cela a-t-il à voir avec ce point de vue? Si oui, comment puis-je contourner ce problème?
Je pense que cela a fonctionné. Pas sûr cependant. Bonne suggestion! –
Cela a fonctionné. Nice "hack" pour forcer Distinct() sur la requête LINQ. –