Как отсортировать столбец в наборе данных VB.NET с несколькими условиями сортировки

У меня есть набор данных, в котором есть столбец, содержащий различные значения строкового типа, как показано ниже:

Пакет Aircraft Crime Package Total Apartments DIC - Персонал

Теперь требуется, чтобы после применения логики сортировки к этому столбцу, если в нем есть значение «Общая сумма пакета», оно должно занимать верхнюю позицию в наборе данных, а после этого все остальные значения должны быть в алфавитном порядке, как показано ниже:

Пакет Total Aircraft Apartments Crime DIC - Персонал

Мы использовали в базе данных ниже логику, которая работает нормально, но не может понять, как это сделать в наборе данных VB.net со стороны Fronend:

ORDER BY 
CASE WHEN UseCarrierAllocation = 0 THEN 
    CASE WHEN InvoiceItemLevel LIKE 'Package Total%' THEN 0 ELSE 1 
    END 
END, InvoiceItemLevel ASC

Любой ответ/идея будет полезна!


person Himanshu    schedule 27.11.2013    source источник


Ответы (2)


Что-то вроде этого может сработать для вас:

    DataView dv = sDataSet.Tables("Table1").DefaultView;
    dv.Sort = "column1";
person Hoh    schedule 27.11.2013
comment
Спасибо за ответ, но это не сработает... так как требует условной сортировки. ваше предложение будет работать только для сортировки по одному условию. - person Himanshu; 27.11.2013
comment
Не могли бы вы привести пример/образец того, как сделать цикл/для каждого в этом сценарии. У меня есть эта таблица набора данных с различными столбцами, и один из столбцов — это InvoiceItemLevel, который я упомянул с различными значениями. Поэтому мне нужно отсортировать эту таблицу набора данных, используя несколько условий, как я уже сказал, мне сначала нужна строка пакета, а затем все в алфавитном порядке. - person Himanshu; 28.11.2013
comment
Используйте ToTable. Пример: для каждой myRow как DataRow в dv.ToTable.Rows - person Jeff; 29.04.2016

person    schedule
comment
Опишите код, который помог бы гораздо лучше, чем просто кусок кода - person Mathews Sunny; 25.02.2018