2011-07-12 12 views
2

このオブジェクトを想定するとORDERBY 2つのクエリ結果を結合します:は、2つの異なる値

var bsQuery = GlobalObjects.bsMessages.Where(t => 
      ((t.Value.Time >= eventStart))).ToList(); 

var gpsQuery = GlobalObjects.gpsMessages.Where(t => 
      ((t.Value.Time >= eventStart))).ToList(); 

私はこれらの2つのクエリの結果を取り、時間とミリ秒で昇順に参加したいと思います。

答えて

4

「結合」とは、SQL結合の一種ではなく「連結」を意味しますか?私はあなただけしたい疑う:

var combined = bsQuery.Concat(gpsQuery) 
         .OrderBy(x => x.Value.time) 
         .ThenBy(x => x.Value.millisecond); 

あなたが道であなたのクエリで非常に多くのブラケットを持っている理由は明らかではない - あなたは実際は、以前の組み合わせを行うことができように、この場合にはそれが見えます:

var combined = GlobalObjects.bsMessages 
          .Concat(GlobalObjects.gpsMessages) 
          .Where(t => t.Value.Time >= eventStart) 
          .OrderBy(t => t.Value.Time) 
          .ThenBy(t => t.Value.Millisecond); 
+0

/@ Soner、 私はあなたが正しいと確信しています。私が前に述べたように、私はLinqに多くの経験を持っていません。私は正しい用語を知らないことにも驚かない。この情報を受け入れるためにコードを変更するには少し時間がかかりますが、これを答えとしてマークします。 – Jason

+0

および@Jon!新しいサイトもありますので、必ずあなたにも言い聞かせてください。 – Jason

+0

私はKeyValuePairをつかむつもりです。私の質問はこれに応じて変更されました – Jason

関連する問題