我有一些挫折,試圖獲得排序的自定義對象類型的ArrayList。我想使用LINQ和下面的代碼是什麼,我有一個測試:排序ArrayList的對象
foreach (classOrder co in orderList)
{
MessageBox.Show("Before: " + co.Feet);
}
//use LINQ to sort my orderList which is an ArrayList of classOrder objects
var sortedList = orderList.OfType<classOrder>().OrderBy(r => r.Feet);
foreach (classOrder co in sortedList)
{
MessageBox.Show("After: " + co.Feet);
}
很明顯,因爲從底部的foreach輸出是一樣的頂部,這是不正確
。
,因爲它只排序第一個數字。腳是一個字符串,但包含數字。任何幫助表示讚賞。謝謝!
什麼類型是「英尺」 – 2013-03-11 21:21:24
不應該是相同的(除非收集已經排序)。你能告訴我你的數據嗎? – MarcinJuraszek 2013-03-11 21:21:26
我剛剛意識到,它似乎沒有工作,因爲它只考慮到第一位數字。腳是一個字符串,但包含數字。例如,如果我的腳有10,1,15的物體,它什麼都沒有做。我只是嘗試了20,1,5,它對它進行了排序,但它排序爲1,20,5 ......所以它看起來只是看第一個數字,因爲它是一個字符串。 – jbright 2013-03-11 21:31:15