2012-10-12 3 views
0

잘 작동하는 다음 코드는 JSON을 구문 분석합니다.json 검색 후 배열 정렬

EVENT 및 SQUAD는 JSON 배열입니다.

배열을 정렬하려면 어떤 코드가 필요합니까? 예 : TIME에서 EVENT를 정렬하거나 RANK에서 SQUAD를 정렬 할 수 있습니까? 정렬 이벤트에 대한 어쩌면

void client_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e) 
     { 

      var serializer = new DataContractJsonSerializer(typeof(gameDetails)); 
      gameDetails jsResult = (gameDetails)serializer.ReadObject(e.Result); 

     ... 
     } 
     [DataContract] 
     public class gameDetails 
     { 
      [DataMember] 
      public string HomeTeamScore { get; set; } 
      [DataMember] 
      public string AwayTeamScore { get; set; } 
      [DataMember] 
      public string FixtureDate { get; set; } 
      [DataMember] 
      public string HomeTeamName { get; set; } 
      [DataMember] 
      public string AwayTeamName { get; set; } 
      [DataMember(Name = "EVENT")] 
      public EVENT[] EVENTS; 
      [DataMember(Name = "SQUADS")] 
      public SQUAD[] SQUADS; 

     } 
     [DataContract] 
     public class EVENT 
     { 
      [DataMember] 
      public string TEAMFLAG { get; set; } 
      [DataMember] 
      public string TIME { get; set; } 
      [DataMember] 
      public string PLAYER { get; set; } 
      [DataMember] 
      public string TYPE { get; set; } 
     } 

     [DataContract] 
     public class SQUAD 
     { 
      [DataMember] 
      public string PLSURN { get; set; } 
      [DataMember] 
      public string PLID { get; set; } 
      [DataMember] 
      public string PLAYER { get; set; } 
      [DataMember] 
      public string TEAM { get; set; } 
      [DataMember] 
      public string PLFORN { get; set; } 
      [DataMember] 
      public string SQUADNO { get; set; } 
      [DataMember] 
      public string RANK { get; set; } 
     } 

답변

1

이 :

jsResult.EVENTS = jsResult.EVENTS.OrderBy(e=>e.TIME).ToArray(); 

주 시간이 문자열과 정렬하기 전에 변환 할 수 있습니다.

+0

완벽! 나는 많은 다른 것들을 시도해 보았고 어떻게 작동하는지 알 수있을 때 간단하게 작동시킬 수 없었다! 정렬을 돕기 위해'TIME'과 몇 가지 다른 변수를 int로 변경했습니다. –