I starali się wdrożyć stronicowania na dłuższą chwilę teraz i znalazłem ten poradnik dla stronicowania z MVC: ASP.NET MVC Paging Done PerfectlyPaging z PagedList, czy to jest wydajne?
Teraz, w tym roztworze, kwerendy bazy danych dla całego zestawu klientów a potem zwróć listę stronicowanych klientów zamiast zwykłej listy.
Uważam, że jest to niepokojące, ponieważ planuję pokazać tylko 10 lub 20 wpisów na stronie, a moja baza danych z łatwością będzie mieć ponad milion z nich. Dlatego zapytanie do całej bazy danych za każdym razem, gdy chcę wyświetlić stronę Index
, wydaje się w najlepszym wypadku kiepskim rozwiązaniem.
Jeśli rozumiem, że coś jest nie tak, proszę, uwolnij mnie teraz, ale dla mnie to rozwiązanie nie jest idealne.
Czy coś źle zrozumiałem? Czy istnieje wydajniejsze rozwiązanie lub biblioteka do dzielenia na strony z MVC?
W jaki sposób przesyłasz zapytanie do bazy danych? – JonE
Samouczek przeznaczony jest dla wersji demonstracyjnej i wykonuje paginację od strony klienta, w której pobiera wszystkie dane za jednym razem, a następnie wykonuje stronicowanie tylko z tego zestawu danych. W twoim przypadku, gdy masz dużo danych, musisz iść z paginacją po stronie serwera. –
@ Glitch100: Pytam DB dokładnie jak w przykładzie: 'List allClients = DB.Client.ToList(); '. –