Всем привет,
помогите, пожалуйста, правильно отсортировать строки в DataTable по столбцу, в котором хранятся значения в шестнадцатеричной системе, то есть строки формата "0x0..F". Сейчас делаю так:
var dataRows = (from row in ds.Tables[0].Select()
orderby Int32.Parse(row["Type"].ToString().TrimStart(new[] { '0', 'x' }),
NumberStyles.HexNumber |
NumberStyles.AllowHexSpecifier) ascending
select r).AsEnumerable();
но как-то не верится, что все так сложно, может есть какой-то более правильный и быстрый способ, устроит даже алгоритм перебора вручную, лишь бы быстро было.
Еще проблема моего решения - при неправильных данных - сразу падает, ибо Int32.Parse не нравится строка. Неправильных данных в принципе быть не должно, но все равно такое поведение при сортировке как-то кажется неправильным, а блоки try городить - так это вообще костыли какие-то.