Я использую угловые данные для отображения списка данных и выполнения сортировки на стороне сервера. когда я сортирую любой столбец, я получаю имя столбца и порядок сортировки. Я использую приведенный ниже код для сортировки записи.
if (!string.IsNullOrEmpty(sortField) && !string.IsNullOrEmpty(sortOrder))
{
if (sortOrder == "asc")
{
if (sortField == "cnic")
{
data2 = data2.OrderBy(a => a.Cnic);
}
else if (sortField == "firstName")
{
data2 = data2.OrderBy(a => a.FirstName);
}
else if (sortField == "fatherName")
{
data2 = data2.OrderBy(a => a.FatherName);
}
else if (sortField == "gender")
{
data2 = data2.OrderBy(a => a.Gender);
}
else if (sortField == "designation")
{
data2 = data2.OrderBy(a => a.Designation);
}
else if (sortField == "cadreName")
{
data2 = data2.OrderBy(a => a.CadreName);
}
else if (sortField == "departmentName")
{
data2 = data2.OrderBy(a => a.DepartmentName);
}
else if (sortField == "districtName")
{
data2 = data2.OrderBy(a => a.DistrictName);
}
else if (sortField == "placeOfPostinfName")
{
data2 = data2.OrderBy(a => a.PlaceOfPostingName);
}
else if (sortField == "bps")
{
data2 = data2.OrderBy(a => a.Bps);
}
else if (sortField == "seniorityNo")
{
data2 = data2.OrderBy(a => a.SeniorityNo);
}
}
else
{
if (sortField == "cnic")
{
data2 = data2.OrderByDescending(a => a.Cnic);
}
else if (sortField == "firstName")
{
data2 = data2.OrderByDescending(a => a.FirstName);
}
else if (sortField == "fatherName")
{
data2 = data2.OrderByDescending(a => a.FatherName);
}
else if (sortField == "gender")
{
data2 = data2.OrderByDescending(a => a.Gender);
}
else if (sortField == "designation")
{
data2 = data2.OrderByDescending(a => a.Designation);
}
else if (sortField == "cadreName")
{
data2 = data2.OrderByDescending(a => a.CadreName);
}
else if (sortField == "departmentName")
{
data2 = data2.OrderByDescending(a => a.DepartmentName);
}
else if (sortField == "districtName")
{
data2 = data2.OrderByDescending(a => a.DistrictName);
}
else if (sortField == "placeOfPostinfName")
{
data2 = data2.OrderByDescending(a => a.PlaceOfPostingName);
}
else if (sortField == "bps")
{
data2 = data2.OrderByDescending(a => a.Bps);
}
else if (sortField == "seniorityNo")
{
data2 = data2.OrderByDescending(a => a.SeniorityNo);
}
}
}
Есть ли какой-нибудь простой способ выполнить эту задачу ... Мой ожидаемый код: я хочу ввести только имя столбца заказа (cnic, firstname, Fathername ...) и порядок сортировки (asc, desc). У меня есть много столбцов и таблица данных для сортировки, и мне нужен универсальный метод для этого.