I check the sort parameter and build a bunch of if
:
if (sortDirection == "ASC") { if (sortBy == "Id") return customerList.OrderBy(x => x.Id).Skip(startIndex).Take(pageSize).ToList(); if (sortBy == "FirstName") return customerList.OrderBy(x => x.FirstName).Skip(startIndex).Take(pageSize).ToList(); if (sortBy == "City") return customerList.OrderBy(x => x.City).Skip(startIndex).Take(pageSize).ToList(); } else { if (sortBy == "Id") return customerList.OrderByDescending(x => x.Id).Skip(startIndex).Take(pageSize).ToList(); if (sortBy == "FirstName") return customerList.OrderByDescending(x => x.FirstName).Skip(startIndex).Take(pageSize).ToList(); if (sortBy == "City") return customerList.OrderByDescending(x => x.City).Skip(startIndex).Take(pageSize).ToList(); }
How can I do it better?
source share