Czy taka implementacja paginacji jest ok?

0

Logika jest dosyć prosta, strona ma wyświetlić użytkowników serwisu i jakieś tam podstawowe dane, no i oczywiście nawigacje między stronami.
Aktualnie wygląda to następująco: w backendzie mam funkcje BrowseUsers(int page), gdzie jako argument kontroler dostaje nr strony.
Na podstawie tego i zdefiniowanej w ustawieniach ilości użytkowników na strone odpowiednio pomija i wysyła wybraną część rekordów.

A żeby umożliwić paginacje backend udostępnia funkcje getUsersMetadata(), która zwraca ilość userów w bazie i ilość która przypada na pojedynczą strone, na podstawie tego frontend ustawia sobie paginacje.
W praktyce to działa, ale nie wiem czy jest to zgodne z "wzorcami".

0

To ja podłącze się do pytania

A gdybym w Controllerze dodał sobie

static int UsersCount

i przy pierwszym utworzeniu kontrolera po prostu przypisywał do niego ilość użytkowników, a później jedynie ją inkrementował w jakimś AddUser?

Nie musiałbym za każdym razem przy paginacji pobierać ilości userów. Czy może jednak np. EF to jakoś sam ogarnia , tzn. trzyma w "szybko dostępnym" miejscu .Count i nie ma sensu bawić się w takie optymalizacje?

0

Nie przejmujcie się liczbą zapytań, to nie ta skala, to nie ten ciężar zapytania.

0

Offtop: Nie "ilość" a liczba użytkowników.

1 użytkowników online, w tym zalogowanych: 0, gości: 1