Jestem zaskoczony tym łatwym problemem z danymi.Jak dodać ROW_NUMBER do kwerendy LINQ lub Entity?
Używam struktury Entity i mam bazę danych produktów. Moja strona wyników zwraca listę stron w paginacji tych produktów. Teraz moje wyniki są uporządkowane według liczby sprzedaży każdego produktu, więc mój kod wygląda następująco:
return Products.OrderByDescending(u => u.Sales.Count());
ta zwraca IQueryable zestawu danych z moich jednostek, uporządkowane według liczby sprzedaży.
Chcę, aby na stronie z wynikami wyświetlała się pozycja każdego produktu (w zbiorze danych). Moje wyniki powinny wyglądać następująco:
Page #1
1. Bananas
2. Apples
3. Coffee
Page #2
4. Cookies
5. Ice Cream
6. Lettuce
Oczekuję, że po prostu chcę dodać kolumnę w moich wyników z wykorzystaniem zmiennej SQL ROW_NUMBER ... ale nie wiem jak dodać tę kolumnę do mojego wyniki są datatable.
Moja wynikowa strona zawiera pętlę foreach, ale ponieważ używam zestawu stronicowanego, zgaduję, że użycie tej liczby do sfałszowania numeru pozycji NIE byłoby najlepszym rozwiązaniem.
Moje pytanie brzmi: jak dodać kolumnę ROW_NUMBER do wyników zapytania w tym przypadku?
Haha. W pewnym sensie to wdrażałem ręcznie, ale to działa. –
Nie wiem, czy to ma znaczenie, ale to będzie trudne do przekazania, ponieważ jest to obiekt anonimowy. –
Nie musisz używać typu anonimowego. Utwórz typ nieanonimowy i użyj go, jeśli potrzebujesz. To tylko przykład. –