Estrutura de entidades com o OData (API da Web) está enviando a cláusula Order By Por padrão para a consulta Sql
Eu estou usando o Web Api com OData. e eu tenho uma entidade definida em um EF 5.0. Estou enviando um pedido muito simples para o Controller ::
$.ajax({url: "/odata/Details?$top=10",
type: "GET",
dataType: 'json',
success: function (data) {
viewModel.list(data.value);
}
Agora código no meu controlador ::
[Queryable]
public override IQueryable<Area> Get()
{
return db.Area.AsQueryable();
}
Query eu vejo usando o SQL Profiler ::
SELECT TOP (@p__linq__1)
[Project1].[id] AS [id1],
[Project1].[name] AS [name1],
[Project1].[pucrhase] AS [pucrhase1],
[Project1].[sale] AS [sale1]
FROM Area
ORDER BY [Project1].[id] DESC, [Project1].[name] ASC, [Project1].[pucrhase] ASC,
[Project1].[sale] ASC,N',@p__linq__1 int,@p__linq__1=10
Não solicitei nenhum pedido, ordem por cláusula. A EF adiciona a cláusula ORDER BY por Itself à Consulta. A cláusula Order By incluída contém todas as colunas da tabela. Esta tabela tem 3 milhões de registros e a Consulta é o tempo limite, uma vez que é Ordenação por Todas as colunas.
Eu testei removendo o Order By demorou menos de um segundo para terminar
Então pergunta é
Como parar estrutura de entidade (suporte de Web Api Odata) de enviar a cláusula Order By para consulta Sql.
Como remover a cláusula Order By da estrutura do SQL Query Entity (Web Api Odata) é executada no servidor?
Qualquer ajuda é apreciada.