2016-06-02 13 views
1

の一環として、私はこのLINQクエリ配列との和を持っています。最後の二つの結果、ロケーションIDと鳥のidにLINQは、返されたデータセット

var result = from game in db.Games 
        join gameevent in db.Events 
         on game.GameId equals gameevent.GameId 
        join birdLife in db.EventBirdCaptures 
         on gameevent.EventId equals birdLife.EventId 
        select new 
        { 
         game.GameId, 
         game.Name, 
         gameevent.LocationId, - array of all the location id's based on the game id 
         birdLife.BirdId - sum of all the birdids based on event id 
        }; 

を私が場所IDのIDの配列を取得したいですおよび鳥の数の合計。

linqでどのように達成できるのですか? おかげ

+0

は、いくつかの入力と期待される出力を追加してください。 –

答えて

1

それはあなたが求めているものを私に明確ではないのですが、私はあなたがjoin-into使用することができますしたいものを理解している場合(グループに参加)の代わりに、join

var result = from game in db.Games 
      join gameevent in db.Events 
      on game.GameId equals gameevent.GameId into events 
      from _event in events 
      join birdlife in db.EventBirdCaptures 
      on _event.EventId equals birdlife.EventId into birds 
      select new 
      { 
       game.GameId, 
       game.Name, 
       locations = events.Select(e => e.LocationId), 
       birds = birds.Sum(b => b.BirdId) 
      }; 
関連する問題