2012-01-15 50 views
-3

我試圖通過下面的命令來發布這些數據,我使用了微軟的代碼我收到了一些錯誤,我想知道人們會如何解決這個問題?謝謝。如何使用LINQ訂購數據

List<Alpha> letters = new List<Alpha> 
     { 
      new Alpha {letter ='A', occur = new List<int>{A}}, 
      new Alpha {letter ='B', occur = new List<int>{B}}, 
      new Alpha {letter ='C', occur = new List<int>{C}}, 
      new Alpha {letter ='D', occur = new List<int>{D}}, 
      new Alpha {letter ='E', occur = new List<int>{E}}, 
      new Alpha {letter ='F', occur = new List<int>{F}}, 
      new Alpha {letter ='G', occur = new List<int>{G}}, 
      new Alpha {letter ='H', occur = new List<int>{H}}, 
      new Alpha {letter ='I', occur = new List<int>{I}}, 
      new Alpha {letter ='J', occur = new List<int>{J}}, 
      new Alpha {letter ='K', occur = new List<int>{K}}, 
      new Alpha {letter ='L', occur = new List<int>{L}}, 
      new Alpha {letter ='M', occur = new List<int>{M}}, 
      new Alpha {letter ='N', occur = new List<int>{N}}, 
      new Alpha {letter ='O', occur = new List<int>{O}}, 
      new Alpha {letter ='P', occur = new List<int>{P}}, 
      new Alpha {letter ='Q', occur = new List<int>{Q}}, 
      new Alpha {letter ='R', occur = new List<int>{R}}, 
      new Alpha {letter ='S', occur = new List<int>{S}}, 
      new Alpha {letter ='T', occur = new List<int>{T}}, 
      new Alpha {letter ='U', occur = new List<int>{U}}, 
      new Alpha {letter ='V', occur = new List<int>{V}}, 
      new Alpha {letter ='W', occur = new List<int>{W}}, 
      new Alpha {letter ='X', occur = new List<int>{X}}, 
      new Alpha {letter ='Y', occur = new List<int>{Y}}, 
      new Alpha {letter ='Z', occur = new List<int>{Z}}, 

     }; 

我沒有錯別字,其實都是可變因素的名稱,這些可變因素保持數因此「INT」以爲會一直ovbious,對不起,這個問題是看你如何訂購數,即發生。歡呼聲

+4

當問一個問題時,確切地說出你得到的錯誤總是一個好主意。 – 2012-01-15 11:04:37

+0

它似乎是命令。 – 2012-01-15 14:32:50

回答

2

因爲許多錯別字,如A,而不是'A'B代替'B'等固定錯別字後,你確實有一個有序集合中您的代碼無法編譯:

List<Alpha> letters = new List<Alpha> 
     { 
      new Alpha {letter ='A', occur = new List<int>{'A'}}, 
      new Alpha {letter ='B', occur = new List<int>{'B'}}, 
      new Alpha {letter ='C', occur = new List<int>{'C'}}, 
      new Alpha {letter ='D', occur = new List<int>{'D'}}, 
      new Alpha {letter ='E', occur = new List<int>{'E'}}, 
      new Alpha {letter ='F', occur = new List<int>{'F'}}, 
      new Alpha {letter ='G', occur = new List<int>{'G'}}, 
      new Alpha {letter ='H', occur = new List<int>{'H'}}, 
      new Alpha {letter ='I', occur = new List<int>{'I'}}, 
      new Alpha {letter ='J', occur = new List<int>{'J'}}, 
      new Alpha {letter ='K', occur = new List<int>{'K'}}, 
      new Alpha {letter ='L', occur = new List<int>{'L'}}, 
      new Alpha {letter ='M', occur = new List<int>{'M'}}, 
      new Alpha {letter ='N', occur = new List<int>{'N'}}, 
      new Alpha {letter ='O', occur = new List<int>{'O'}}, 
      new Alpha {letter ='P', occur = new List<int>{'P'}}, 
      new Alpha {letter ='Q', occur = new List<int>{'Q'}}, 
      new Alpha {letter ='R', occur = new List<int>{'R'}}, 
      new Alpha {letter ='S', occur = new List<int>{'S'}}, 
      new Alpha {letter ='T', occur = new List<int>{'T'}}, 
      new Alpha {letter ='U', occur = new List<int>{'U'}}, 
      new Alpha {letter ='V', occur = new List<int>{'V'}}, 
      new Alpha {letter ='W', occur = new List<int>{'W'}}, 
      new Alpha {letter ='X', occur = new List<int>{'X'}}, 
      new Alpha {letter ='Y', occur = new List<int>{'Y'}}, 
      new Alpha {letter ='Z', occur = new List<int>{'Z'}}, 

     }; 

如果這些字母尚未已經排序:

var sortedLetters = 
     from p in letters 
     orderby p.letter 
     select p; 
0

固定你的錯別字後,這應該爲你工作:

var sortedLetters = (from c in letters select c).OrderBy(d=>d.letter)