CONSULTA POR INTERVALO DE NDICE (PAGINADOR)

 Tópico anterior Próximo tópico Novo tópico

CONSULTA POR INTERVALO DE NDICE (PAGINADOR)

C#

 Compartilhe  Compartilhe  Compartilhe
#487051 - 09/02/2019 12:19:49

MRSILVA
MARINGA
Cadast. em:Julho/2015


Ol.
Preciso de uma ajuda desde j agradeo quem puder me ajudar, no meu projeto MVC NET CORE tenho uma pagina com uma tabela, onde eu monto um paginador de acordo com o numero de registro que retorna da consulta, cada pagina eu carrego at 10 registros na tabela, ou seja, na primeira pagina conter o registro com ndice 0 a 9 na segunda conter os registros com ndice 10 a 19 assim por diante...  Quando eu renderizo a pagina pela primeira vez eu j estou carregando os 10 primeiros registros at ai tudo bem, o problema que eu no queria trazer os restantes dos registros, at podia guardar esses registros em um array (Java Script) e depois carregar no evento do click do paginador, mais intuito e construir uma pagina bem leve, ento queria carregar esses registros conforme fosse clicando em cada pagina, ou seja, trago esses registros atravs de uma requisio AJAX da minha WEBAPI e carrego os mesmo via JAVASCRIPT, ai vem o problema estou com dificuldade de montar a instruo ENTITY FRAMEWORK ou SQL para trazer os registros entre os intervalos de ndice, exemplo se eu der um click na pagina 3 queria trazer os registros com ndice 20 a 29 at posso trazer todos os registros e fazer um loop e separado o intervalo necessrio, mas queria trazer diretamente o intervalo do banco de dados acredito que dessa forma vou ganhar desempenho.

Vale lembrar que a dificuldade somente na instruo EF ou SQL.

Tentei alguns exemplos que pesquisei na internet  sem sucesso, umas das minhas tentativas foi a seguinte:

[]SELECT Id, Descricao, IdTipo FROM ProdutoGrupo WHERE IdTipo = @idTipo AND ROWNUM >= @indexIni AND ROWNUM <= @indexfim[]  






Resposta escolhida #487053 - 09/02/2019 13:22:15

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Deve existir uma dzia de diferentes maneiras de fazer o que tu quer. Veja se isso te d uma luz

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#487126 - 13/02/2019 00:01:27

MRSILVA
MARINGA
Cadast. em:Julho/2015


Obrigado pelo exemplo Kerplunk.

J tinha criado meu paginador estava com duvidas somente na elaborao da consulta, mas agora est funcionando como esperado, estou fazendo a seguinte consulta.

[]WITH MyDados AS (SELECT Id, IdTipo, Descricao, RowIndex = ROW_NUMBER() OVER(ORDER BY Id) FROM ProdutoGrupo WHERE IdTipo = @idTipo) SELECT Id, IdTipo, Descricao FROM MyDados WHERE RowIndex between  @indexIni AND @indexFim[]))  


Se algum tiver  uma outra sugesto de consulta com  melhor performance eu agradeo.



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por MRSILVA em 22/07/2019 09:02:19