У меня есть список строк, и эти строки содержат числа и слова.
Что я хотел сделать, так это упорядочить его по числам (числовой порядок), за которыми следуют слова (в алфавитном порядке)
Мой список не содержит смеси двух ... вот пример
1, 5 , 500, LT, RT, 400 -> LINQ -> 1, 5, 400, 500, LT, RT
Вот пример того, что у меня есть, он работает, но мне было интересно, есть ли лучший способ его написать?
int results = 0;
// Grabs all voltages
var voltage = ActiveRecordLinq.AsQueryable<Equipment>()
.OrderBy(x => x.Voltage)
.Select(x => x.Voltage)
.Distinct()
.ToList();
// Order by numeric
var numberVoltage = voltage
.Where( x => int.TryParse(x, out results))
.OrderBy( x => Convert.ToInt32(x));
// Then by alpha
var letterVoltage = voltage
.Where(x=> !String.IsNullOrEmpty(x))
.Where(x => !int.TryParse(x, out results))
.OrderBy(x => x);
return numberVoltage.Union(letterVoltage)
Спасибо за помощь!