Prevent Entity Framework adding ORDER BY when using Include

c# entity-framework entity-framework-6 linq sql

Question

We have a query similar to the following:

from x in db.Table.Include(x => x.Parent)
                  .Include(x => x.Parent.Relation)
                  .Include(x => x.Relation)
                  .Include(x => x.Children)
where /* some query */
select x

The problem is that when adding .Include(x => x.Children), the ORDER BY statement that Entity Framework adds to the generated SQL causes the query to take a long time to execute - something like the below:

ORDER BY [Project2].[Id1] ASC, [Project2].[Id2] ASC, [Project2].[Id] ASC, [Project2].[C4] ASC

Adding orderby to the linq query doesn't help either, it doesn't affect the statement above other than adding an additional column to sort by.

1
24
8/26/2014 11:29:00 AM

Accepted Answer

Apparently, it's something that EF does internally to ease the creation of resulting objects afterwards. You can't remove the order by instruction.

6
11/8/2014 8:06:44 PM


Related Questions





Related

Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow
Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow