Tôi đang kiểm tra các thông số sắp xếp và xây dựng một loạt các báo cáo if
:Tôi làm cách nào để cải thiện mã phân loại này?
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();
}
Làm thế nào để làm điều này tốt hơn?
Xác định "tốt hơn". Tốt hơn cho cái gì? – Oded
Bằng cách nào bạn muốn "cải thiện" nó? Nó không hoạt động như dự định? Nó có quá chậm không? Bạn không thích cách mã được cấu trúc? Chúng tôi cần thêm thông tin ở đây. –
Tôi sẽ khuyên bạn nên sử dụng LINQ thành phần. Xem http://stackoverflow.com/questions/5881107/how-can-i-build-entity-framework-queries-dynamically/5882243#5882243 – Euphoric